|
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ○広告 TVコマーシャルでおなじみの『ネットプライスモール』 に あなたのお店を出店しませんか? http://www.sls.usen.ne.jp/kns-project/netpricemall2.html ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 茨城県の片田舎、竜ヶ崎にこんな店があったなんて! そう。そこがPix CAFE。 パスタが美味い!ピッツァが美味い!ついで、店長ウクレレ上手い! みんなでガヤガヤ、二人でしっとり、一人のさびしい人は責任を 持っておなぐさめ致します。 まあ、とりあえずいらっしゃいよ! Pix CAFE 住所:茨城県竜ヶ崎市中根台2−2−4 TEL:0279−65−4440 URL< http://www.geocities.co.jp/Foodpia/8873/> ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 発行者もおすすめ、無償での掲載 6号線をすこ〜〜〜〜し曲がった場所にあります. (めるまがを見てきたといっても、何もありません.(笑)) 発行部数:MagMag 2313 Pubzine 312 カプライト209 Melten 31 E-Magazine 54 ここでメール 146 Macky 153 Melma 224 総発行部数:3446 ▼△▼△▼△▼△▼△▼△▼△▼△▼△▼△▼△▼△▼△▼△▼△▼ ------------------------------------------------------------ ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ ■CからはじめるWindowsDirectXへの道 Vol33■ ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ ┌─────────────────────────────┐ ■第2章 Windows(リソースファイル( RC )編) └─────────────────────────────┘ ─────────────────────────────── さて、今回は,リソースファイルをテキストファイルから作成して みます。また、そのリソースファイルをつかい、簡単な 表示を表示を行います. 追加:ダウンロードをHTML−HELPを使用したものに変更しました. 以前の形より見やすくまた、使いやすくなりました. ┌─────────────────────────────┐ 電話加入権激安!ISDNライトなら9800円で電話が引ける!?(株)コムズ ↓詳しくはここをクリック! <http://www.comzz.co.jp/cgi-bin/cookie/set.cgi?t=top&id=2543> └─────────────────────────────┘ ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ● リソースファイル ● 今回は、リソースファイル について触れていきます. 関数などの説明は、サンプルのあとに乗せていきます。 ┌─────────────────────────────┐ 今回はまず説明の前に、どのようなものか?を試してもらい ためと思います. では、ためしに今まで作ったリソースファイルをテキストエディタ で開いてみてください. そして,そのファイル内の数値などを見てみてください. 以下のような形で出力されると思います. 前回のコンボボックスを試す編のリソースファイルです. ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ //Microsoft Developer Studio generated resource script. // #include "resource.h" // Generated Help ID header file #define APSTUDIO_HIDDEN_SYMBOLS #include "resource.hm" #undef APSTUDIO_HIDDEN_SYMBOLS #define APSTUDIO_READONLY_SYMBOLS ///////////////////////////////////////////////////////////////////////////// // // Generated from the TEXTINCLUDE 2 resource. // #include "afxres.h" ///////////////////////////////////////////////////////////////////////////// #undef APSTUDIO_READONLY_SYMBOLS ///////////////////////////////////////////////////////////////////////////// // 日本語 resources #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_JPN) #ifdef _WIN32 LANGUAGE LANG_JAPANESE, SUBLANG_DEFAULT #pragma code_page(932) #endif //_WIN32 ///////////////////////////////////////////////////////////////////////////// // // Dialog // MAIN DIALOGEX 0, 0, 187, 133 STYLE DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU EXSTYLE WS_EX_ACCEPTFILES CAPTION "ダイアログ" MENU IDR_MENU1 FONT 9, "MS Pゴシック" BEGIN DEFPUSHBUTTON "OK",IDOK,130,7,50,14 PUSHBUTTON "キャンセル",IDCANCEL,130,24,50,14 COMBOBOX IDC_COMBO1,14,7,88,17,CBS_DROPDOWNLIST | CBS_AUTOHSCROLL | CBS_NOINTEGRALHEIGHT | CBS_DISABLENOSCROLL | CBS_UPPERCASE | WS_VSCROLL,0,HIDC_COMBO1 PUSHBUTTON "追加",IDC_BUTTON1,14,83,32,19 PUSHBUTTON "削除",IDC_BUTTON2,54,83,32,20 PUSHBUTTON "Dir",IDC_BUTTON3,93,86,34,18 PUSHBUTTON "検索",IDC_BUTTON4,14,106,29,20 PUSHBUTTON "ドロップダウン",IDC_BUTTON5,53,107,42,19 PUSHBUTTON "カウント",IDC_BUTTON6,98,108,32,18 EDITTEXT IDC_EDIT1,130,80,50,12,ES_AUTOHSCROLL END ///////////////////////////////////////////////////////////////////////////// // // DESIGNINFO // #ifdef APSTUDIO_INVOKED GUIDELINES DESIGNINFO DISCARDABLE BEGIN "MAIN", DIALOG BEGIN LEFTMARGIN, 7 RIGHTMARGIN, 180 TOPMARGIN, 7 BOTTOMMARGIN, 126 END END #endif // APSTUDIO_INVOKED #ifdef APSTUDIO_INVOKED ///////////////////////////////////////////////////////////////////////////// // // TEXTINCLUDE // 1 TEXTINCLUDE DISCARDABLE BEGIN "resource.h\0" END 2 TEXTINCLUDE DISCARDABLE BEGIN "#include ""afxres.h""\r\n" "\0" END 3 TEXTINCLUDE DISCARDABLE BEGIN "\r\n" "\0" END #endif // APSTUDIO_INVOKED ///////////////////////////////////////////////////////////////////////////// // // Menu // IDR_MENU1 MENU DISCARDABLE BEGIN POPUP "main" BEGIN MENUITEM "dialog", IDC_MENU1 END END #endif // 日本語 resources ///////////////////////////////////////////////////////////////////////////// #ifndef APSTUDIO_INVOKED ///////////////////////////////////////////////////////////////////////////// // // Generated from the TEXTINCLUDE 3 resource. // ///////////////////////////////////////////////////////////////////////////// #endif // not APSTUDIO_INVOKED ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ このように、定義されています. これをみて、なるほどと思った方は勘がいいです. このようにして、RCファイルを作ることができます. ---------------------------------------------------------------- ■■■■■■■■■■■■■■■■ 毎日届く無料メールマガジン ■■■ ■ 『日刊フリーソフト ■ win版』 Windowsユーザーさんは必見。 ■ 便利でお得なフリーソフトを紹介します。 ■■■■ http://www.ne.jp/asahi/cineman/com/freesoft/ ■■■■ ---------------------------------------------------------------- ------------------------------------ ☆ MSX電遊ランド 8/20 東京秋葉原開催決定 http://imahi.com/dm.htm ☆ なつかしのMSXパソコン情報誌/メル友・告知情報誌/相互広告情報誌 ☆ 何が届くかわからない「やみなべ」発行中 http://imahi.com/msxmag.htm ----この広告は「相互広告ネットワーク」提供です --------------PR---- では、いくつかのバリエーションを知っておいたほうが よいので,例をあげます。 これから実行することは, MSDN 検索 の 「Resource-Definition Statements」に ほとんどのことが乗っています. もし、いかに乗っていないことを知りたいときには, このページを参照ください. LTEXT などと参照すればあると思います. ┌─────────────────────────────┐ #include <windows.h> #include "resource.h" //ダイアログを作成 ボタンなどの追加 testdialog DIALOG MOVEABLE DISCARDABLE 20,20,480,300 STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU CAPTION "C〜WindowsDirectXへの道" FONT 8,"Italic" VERSION 1.0 LANGUAGE LANG_JAPANESE ,SUBLANG_ENGLISH_US BEGIN CHECKBOX "チェックボックス",IDC_CHECK1,9,17,80,10 GROUPBOX "フレーム ",-1,7,41,86,39 RADIOBUTTON "一つ目",IDC_RADIO1,13,52,37,10,WS_GROUP | WS_TABSTOP RADIOBUTTON "2つめ",IDC_RADIO2,13,65,39,10 PUSHBUTTON "消す",IDCANCEL,206,115,50,14,WS_GROUP COMBOBOX IDC_COMBO1,10,130,60,90 EDITTEXT IDC_EDIT1,100,20,45,92,WS_HSCROLL LISTBOX IDC_LIST1,100,130,50,100,LBS_NOTIFY| WS_VSCROLL | WS_BORDER // CTEXT "中央寄せ",-1,200,10,150,8 // LTEXT "左寄せ",-1,200,30,10,150,8 // RTEXT "右寄せ",-1,200,50,10,150,8 // CONTROL "子ウィンドウ",IDC_BUTTON1,"ぼたんで〜す。",BS_DEFPUSHBUTTON | // WS_TABSTOP | WS_CHILD ,45,66,48,12 // ICON "favorite",IDC_ICON1,40,40 // DEFPUSHBUTTON "戻る",IDC_OK,40,10,40,14,WS_TABSTOP SCROLLBAR IDS_SCROLL1,450,10,8,50,SBS_VERT END //メニューの作成 OLDMENU MENU DISCARDABLE BEGIN POPUP "&File" BEGIN MENUITEM "E&xit",IDM_EXIT END POPUP "&DirectX" BEGIN MENUITEM "Item &1",IDM_ITEM1 MENUITEM "Item &2",IDM_ITEM2 MENUITEM "Item &3",IDM_ITEM3 END POPUP "&Help" BEGIN MENUITEM "&About My Application..",IDM_ABOUT END END //ストリングテーブル STRINGTABLE BEGIN IDS_STRING1 "C〜WindowsDirectXへの道" IDS_STRING2 "Default" END └─────────────────────────────┘ 今回だけで,全てを説明するには,メールサーバーの50KBまでの 範囲を余裕で超えてしまいますので,徐々に短期的に説明を 施していきたいと思います. ┌─────────────────────────────┐ それでは、まずはメインのダイアログボックスです。 まずは、定義を示します. DIALOG nameID load-option mem-option x,y,width,height option-statments となっています. ─────────────────────────────── testdialog DIALOG MOVEABLE DISCARDABLE 20,20,480,300 ─────────────────────────────── testdialog の部分は,そのダイアログの名前です. この部分をリソース名となります. DIALOG の部分は、まさにダイアログを作るということです. また次の MOVEABLE および DISCARDABLE は、(mem-option)を設定するものです. 次の 20,20,480,300 は、x、y、幅、高さなどを示します. 今回,(load-option)を設定していませんが, PRELOAD 初めに読みこむ。 LOADONCALL 必要になったときに読み込む. となっています. ─────────────────────────────── STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU ─────────────────────────────── ここでは、スタイルを設定しています. この部分の説明は、ほとんどがCreateWindowの時と同一ですので、 省略します. ─────────────────────────────── CAPTION "C〜WindowsDirectXへの道" ─────────────────────────────── WS_CAPTION スタイルのダイアログボックスの時に使用します. ダイアログボックスのキャプションをつける。 ─────────────────────────────── FONT 8,"Italic" ─────────────────────────────── ダイアログボックス内で、フォントの大きさおよび MSゴシックなどの 書体を決めます. ─────────────────────────────── VERSION 1.0 ─────────────────────────────── 作者の任意です。バージョン指定をします. ─────────────────────────────── LANGUAGE LANG_JAPANESE ,SUBLANG_ENGLISH_US ─────────────────────────────── 使用する言語を定義します. ─────────────────────────────── また、最後に MENU ステートメントも存在します. ─────────────────────────────── Menu testMenu ─────────────────────────────── 他のRCファイル内で定義していた値を設定します. メニューをダイアログボックスで使用します. ─────────────────────────────── 今回は,リソースファイルの見方を簡単に説明しました。 エラーが出た場合、考えられる問題. #include<windows.h> #include "resource.h" リソースファイルの拡張子を、RCにしていない. を忘れた場合,間違いなくエラーが発生します. また、エラーが出た場合は,F1でも押して確かめてみてください. また、確認用に ─────────────────────────────── hwndMain = CreateDialog( hInstance, "testdialog" , hwndMain, (DLGPROC)DlgProc ) ; HMENU hMenu; hMenu=LoadMenu(hInst,"OLDMENU"); SetMenu(hwndMain,hMenu); if( hwndMain != NULL ) { ShowWindow( hwndMain, nCmdShow ) ; UpdateWindow( hwndMain ) ; } ─────────────────────────────── を示しておきます. 忘れているかたもいる可能性がありますね。 ─────────────────────────────── それでは、次回は他のリソースの定義の仕方などを 示していきたいと思います. └─────────────────────────────┘ なお、以上のプログラムは、私の動作環境VC++6.0 Win32 Application で確認済みです. ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 発行者あとがき: 最近,資格が欲しくなりました. その資格は,「電気通信主任技術者」です。 あることがきっかけで,とろうと思いました. しかし、どこかにきっかけがあるものですね。 何年計画となりそうです. 詳しい方がいましたら,是非私宛にアドバイスをいただきいです。 また、なにか講座などを知っている方は、宣伝でもかまいません 私宛にメールをいただけたら幸いです. ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ メールアドレス:<mailto:rain2000@geocities.co.jp> ホームページ :<http://www.geocities.co.jp/SiliconValley-Bay/3125> 発行者:rain2000 編集 :rain2000 このメールマガジンは,以下の発行者さんを通して発行してます. ●まぐまぐ: アドレス : http://www.mag2.com/ ID : 0000024922 ●クリックインカム: アドレス :http://clickincome.net/ ID : m00002885 ●Pubzine アドレス :Pubzine (http://www.pubzine.com/) ID :004293 ●ここでメール アドレス : http://mail.cocode.ne.jp/ ID : 0400100071 ●メルマガ天国 アドレス : http://melten.com/ ID : 300 ●E-magazine アドレス :http://www.emaga.com/ ID :cwindows ●Macky アドレス : http://macky.nifty.ne.jp/ ID : 2329 ●カプライト アドレス : http://kapu.cplaza.ne.jp/ ID : 234 また、登録解除などの手続きに関しましては,上記の ホームにてお願いします. ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ |