win32記事本程式(一)

來源:互聯網
上載者:User

標籤:

我不會取標題,大體上我想用win32,模仿windows的記事本,寫個記事本程式,最後讓我的程式和微軟的程式在外觀和功能上都差不多。這樣一來我可以學到一些新知識,鞏固舊的知識。

一、首先做個功能表列吧。建個menu.rc檔案,參照微軟的記事本,裡面寫上這些:

 1 //menu.rc 2  3 #define IDM_MAIN    0x2000 4 #define IDM_NEW     0x4101 5 #define IDM_OPEN    0x4102 6 #define IDM_SAVE    0x4103 7 #define IDM_SAVEAS    0x4104 8 #define IDM_SETTING    0x4105 9 #define IDM_PRINT    0x410610 #define IDM_EXIT    0x410711 12 #define IDM_DUDO    0x420113 #define IDM_CUTE    0x420214 #define IDM_COPY    0x420315 #define IDM_PASTE    0x420416 #define IDM_DELETE    0x420517 #define IDM_FINDE    0x420618 #define IDM_FINDENEXT    0x420719 #define IDM_REPLACE    0x420820 #define IDM_GOTO    0x420921 #define IDM_SELETEALL    0x421022 #define IDM_DATE    0x421123 24 25 #define IDM_WORDWRAP    0x430126 #define IDM_FONT    0x430227 28 #define IDM_STATUS    0x440129 30 #define IDM_HELP    0x450131 #define IDM_ABOUT    0x450232 33 34 IDM_MAIN  menu discardable35 BEGIN 36     popup    "檔案(&F)"37     BEGIN38         menuitem    "建立(&N)",    IDM_NEW39         menuitem    "開啟檔案(&O)",    IDM_OPEN40         menuitem    "儲存(&S)",    IDM_SAVE41         menuitem    "另存新檔(&A)",    IDM_SAVEAS42         menuitem    separator43         menuitem    "版面設定(&U)",    IDM_SETTING44         menuitem    "列印(&P)",    IDM_PRINT45         menuitem    separator46         menuitem    "退出(&E)",    IDM_EXIT47     END48     popup    "編輯(&E)"49     BEGIN50         menuitem    "撤銷(&U)",    IDM_DUDO GRAYED 51         menuitem    separator52         menuitem    "剪下(&T)",    IDM_CUTE GRAYED 53         menuitem    "複製(&C)",    IDM_COPY GRAYED 54         menuitem    "粘貼(&P)",    IDM_PASTE55         menuitem    "刪除(&L)",    IDM_DELETE GRAYED 56         menuitem    separator57         menuitem    "尋找(&F)",    IDM_FINDE GRAYED 58         menuitem    "尋找下一個(&N)",IDM_FINDENEXT GRAYED 59         menuitem    "替換(&R)",    IDM_REPLACE60         menuitem    "轉到(&G)",    IDM_GOTO GRAYED 61         menuitem    separator62         menuitem    "全選(&A)",    IDM_SELETEALL63         menuitem    "時間日期(&D)",    IDM_DATE 64     end65     popup "格式(&O)"66     BEGIN67         menuitem    "自動換行(&T)",    IDM_WORDWRAP68         menuitem    "字型(&T)",    IDM_FONT69     END70     popup "查看(&V)"71     BEGIN72         menuitem    "狀態列(&S)",    IDM_STATUS GRAYED 73     END74     popup "協助(&H)"75     BEGIN76         menuitem    "查看協助(&H)",    IDM_HELP77         menuitem    separator78         menuitem    "關於記事本(&A)",    IDM_ABOUT79     END80 END

最後在主程式的建立視窗函數中,把功能表列的控制代碼傳進去

hwnd = CreateWindow (szAppName,                                           TEXT ("無標題-記事本"),                           WS_OVERLAPPEDWINDOW,                               CW_USEDEFAULT,                                      CW_USEDEFAULT,                                       CW_USEDEFAULT,                                      CW_USEDEFAULT,                                     NULL,                                                LoadMenu(hInstance,MAKEINTRESOURCE(IDM_MAIN)),                          hInstance,                                            NULL) ;               

這樣運行程式,功能表列就出來了

功能表列的寫法可以參考“windows sdk編程系列文章"。作者不知道是誰

win32記事本程式(一)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.