C# Event メモ

一般的にイベントハンドラーというのはイベント発生を待ち受けるイベントループに対して実際の処理の部分のこと。

EventHandler型というのは定義済みのデリゲート型のこと。EventHandler型の1つめの引数はObject型で2つめの引数がEventArgs型となる。

呼び出しは自身のクラスからのみ可能で、直接デリゲート型を公開せずに外部から登録/解除できる仕組み。

 

C# IEnumerable/IEnumerator メモ

C#2.0からイテレータ構文が導入され簡単に実装できるようなった。

戻り値は、IEnumerableを返す必要がある。

yield returnは処理を継続、yield breakはそこで処理が終了する。

 

C# 例外メモ

Try句の中では階層が深いところの例外でもキャッチできる。

Try句自体が階層になっている場合は上位に通知されない。

上位に通知する場合はCatch句の中でThrowする。

メッセージを持って上位に通知することもできる。①、②と表示される。

 

C# Delegate メモ

基本

複数代入できる(マルチキャスト)

匿名関数(匿名メソッド・ラムダ式)

C#2.0から匿名メソッド、C#3.0ラムダ式

C#2.0でジェネリック(型パラーメータ)が導入。Action,Func(返値有)を使うとDelegateの定義も不要になる。Action,Func等を定義済みデリゲートと呼ぶ。

実用性はないけど、ラムダ式と定義済みデリゲートで即時実行もできる。

VBA 仕入台帳から注文書

台帳に入力された内容を注文書の雛形に書き込み、指定したブックに新しいシートとして複写する。レジストリにパスを保存することでブックを記憶することができる。

 

エクセル埋め込み設定

時々エクセルをブログに埋め込んでいるのだけれど、設定が統一できていなかったので、今度は統一していこうかな。

シート設定

・シート名は1~
・行列の先頭の空白削除
・高さは13、幅は8と入力
・メイリオ, 9px
・左揃え、上下中央揃え
・ズームは100%
・スクロールは先頭
・内容はG列までに入力

埋め込み

ファイル>共有>埋め込み

・外観と操作

常にこのセルが選択された状態で開始するをA1に変更し、その他のチェックは全て外す。

・大きさ

999と入力(700px×900px)

Chrome拡張機能 新規タブにデータを渡す

右クリックにメニューを表示し、クリックするとアクティブタブのタイトルとURLを新しいタブ(ローカルhtml)に渡すサンプル。

フォルダには下記4つのファイルとjquery-3.5.0.min.jsを入れてある。

manifest.json

background.js

test.html

test.js

 

VBA 仕入シートコピー・マスタチェック

以前利用していたVBA

 

WordPress 更新順ウィジット作成

WordPress カスタマイズ

以前は最新投稿ウィジットを更新順に並び替えるカスタマイズをしていたが、バージョンアップの時にもとに戻ってしまうので専用で作成することにした。

wp-includes/widgets/class-wp-widget-modified-posts.php
を作成する。

以下は手動で記入する。

残りの部分は、
wp-includes/widgets/class-wp-widget-recent-posts.php
からwidget,update,formをそのままコピーし、
以下の通り変更。

$r = new WP_Query()
の中にある配列に以下を追加する。
‘orderby’=>’modified’

<span class=”post-date”>
<?php echo get_the_date( ”, $recent_post->ID ); ?>
</span>

<span class=”post-date”><br>
更新:<?php echo get_the_modified_date(‘Y-m-d’,$recent_post->ID); ?>
&nbsp;&#047;&nbsp;
投稿:<?php echo get_the_date(‘Y-m-d’,$recent_post->ID); ?>
</span>
に変更。

 

***

有効化について

wp-includes/default-widgets.php
に以下を追加。
require_once ABSPATH . WPINC . ‘/widgets/class-wp-widget-modified-posts.php’;

あるいは以下の方法。

wp-content/plugins
の中に
modified-posts.php
を作成し以下を記入。

そうすると、
管理画面>プラグイン
にModified Postsと表示されるので有効化する。