l'agenda温泉 - Developmentの湯
期待度50%でラジェンダ買いました。結構気に入ってて満足度90%です。このページでは、ラジェンダ用ソフトの開発の過程でわかったことを書き留めておくことにします。
ラジェンダの開発をする人の助けになれば幸せです。
- 標準メニューを指定するレジストリ
HKLM\SOFTWARE\CASIO\COShell\MainMenu\File [REG_SZ]
標準ソフトで渦巻きを押したとき、ここで指定したプログラムが起動されるみたいです。
HKLM\SOFTWARE\CASIO\COShell\Startup\****\File [REG_SZ]
電源ON/リセット時には、ここで指定したプログラムが起動されます。****の部分は何でもいいらしい。
- 組み込むライブラリ
GetDisk.lib
レジストリフラッシュをするための CGDFlushRegistry() を呼ぶときに組み込みます。
CSO.lib
ラジェンダ用のコントロール(渦巻きボタン等)を使うときは組み込みます。
| CSOコントロール |
2003/04/19 2003/05/02 |
- ドロップダウンリスト
hWndCasioCombo = CSOBar_InsertComboBox(hWndCasioBar,hInst,CSOBAR_COMBO,(CBS_DROPDOWNLIST|WS_VSCROLL),TRUE,IDM_CSOBAR_NEW,1,100,80);
5番目のパラメータにTRUEを指定するときは、6番目のパラメータに指定するボタンがあらかじめ CSOBar_AddButtons されていなければダメ。また、6番目のパラメータを CSOBar_AddButtons する順番がドロップダウンリストの表示位置を左右します。
左から「ボタン1」「ボタン2」「ボタン3」の3つのボタンを表示したいとき、「ボタン3」「ボタン1」「ボタン2」の順でCSOBar_AddButtons するときと「ボタン1」「ボタン2」「ボタン3」の順で CSOBar_AddButtonsするときでは、ドロップダウンリストが表示される位置が変わります。
4番目のパラメータには WS_VSCROLL を追加した方がいいです。
3番目のパラメータで、WndProcに渡される WM_COMMAND の wmId を指定します。下記のようにすると、このコンボボックスでユーザが値を選択したときのイベントを記述できます。
LRESULT CALLBACK
WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) {
switch(message) {
case WM_COMMAND:
wmId = LOWORD(wParam);
wmEvent = HIWORD(wParam);
switch(wmId) {
case CSOBAR_COMBO: // コンボボックス
switch(wmEvent) {
case CBN_DROPDOWN: // ドロップダウンしたとき
:
:
break;
case CBN_SELENDOK: // 何か選択したとき
:
:
- リストビューのソート
数年前と同じことで悩んでしまったので、忘れないようにココに書いとく。猫の110章のままで良いが、なぜか「最初のフィールドに何かデータが入っていないとどのフィールドでもソートできない」。最初のカラムをチェックボックスだけでデータ空ッポのままにしておくとどのフィールドでもソートしない。TEXT("") だけでも入れるとソートできるようになる。foでソートが全くできないのでくらどぅのソースと見比べていたらコメントが入っていた。激しく脱力。
脱力といえば WILDE ENGEL のキャストが変わってしまった。写真の感じだと方向性も変わってるような・・・。ヒドいよ!以前のページはツブれてるし。フォーラムにもWILDE ENGEL 1のページを再開しろと言ってる人がいる。ああラーベたん・・・。
戻る