麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

【win32】vs2010的窗體程序Helloworld

2019-11-11 05:01:02
字體:
來源:轉載
供稿:網友

本來,mfc都已經是很落后的東西,現在寫窗體都用C#,提到vs的窗體大家都想到c#。雖然如此,但本來了解Windows窗體的編程機制,同時又本著vc6可以實現的東西,vs都可以實現而且更進步的理念,同時市面上大部分介紹win32窗體C++編程的書籍都是以VC6為版本的,所以開倒車也要在VS中實現win32窗體程序的了。

具體這樣做:

1、打開VS2010,廢話,如下圖,創建一個win32窗體程序。

2、點下一步,直接默認設置點完成,創建一個Windows應用程序

3、可以直接編譯,運行了,但是生成出來的東西并不能讓我們滿意,如下圖所示,有一個我們并不需要出現的菜單欄,我們還想在窗體中輸出一個Helloworld。

或許此刻,你覺得VC6沒有這么亂吧,或者認為VC6和VS2010差別很大?按照部分書上所示,在創建工程選擇第3項,編譯運行一勞永逸?

但其實并不是,在VC6同樣如此的。而且你還可以發現,其實VC6那些文件和這里VS2010文件也是差不多的。

實際上VS2010只是放了些兼容性文件上去而已。來來去去還是那一套,繪出一個窗體,然后在這個窗體有一個函數在不停地循環,就是為了讀鼠標或者鍵盤的響應信息。然后這些信息統統扔到LRESULT CALLBACK WndPRoc這個消息回調函數里面,你要弄什么就在這個函數里面寫吧。

就是個框架,沒有什么技術含量,和你改java web什么的,改win32窗體獨有的程序框架里面的東西,在里面加你自己的東西就行了。

好,說了這么多,到底怎么完成我們去掉菜單欄和輸出一個Helloworld文件的夢想呢?

4、直接對Win_Helloworld.cpp(文件名根據你第一步的工程名不同而不同)這個主cpp入手,進行修改。

(1)去掉菜單欄,對ATOM MyRegisterClass(HINSTANCE hInstance)函數,整個程序的第87行入手,如下圖修改,將其值換成NULL。

同時注釋或者刪去142-158行消息回調函數中關于菜單欄單機處理的case WM_COMMAND事件。

172-190行一大段關于“關于”對話框的函數。

(2)輸出Helloworld

接下我們需要對消息回調函數中的case WM_PAINT:這個所謂的“重繪事件”進行入手,就是你每次移動、最大化這個窗口,這個事件都會被觸發的,窗體會被重繪,人家vs2010也非常好心你就是應該在這里開始你的win32窗體程序的旅程,將case WM_PAINT:修改成如下所示,其實就是加了SetTextColor和TextOut兩個函數而已:

case WM_PAINT:	hdc = BeginPaint(hWnd, &ps);	// TODO: 在此添加任意繪圖代碼...	SetTextColor(hdc,RGB(0,0,0));//黑色的畫筆	TextOut(hdc,100,100,L"Helloworld",strlen("Helloworld"));//在(100,100)這個文件,輸出Helloworld。	EndPaint(hWnd, &ps);	break;即:

你可以將這個hdc,理解成在這個窗體畫東西的畫筆。然后呢,各個函數基本都是名副其實了,值得提醒在TextOut函數中,不像VC6,在VS2010中,所有那些LPCTSTR,不能直接放個字符串上去,要在前面加個大寫L,強行轉化一下。將一個普通字符串轉化為 系統中的窗體字符(大概就是這個意思)。所以你就知道C++各種各樣的變量是多么蛋疼,php等無變量類型的設計是多么偉大。

寫到這里就寫完了,運行結果如下圖所示:

最后,做個小終結吧。

寫C++的Win32窗體程序,別拿以前C語言那種,從0開始的思維往上面套。就是系統已經給你一個框架,你按照他的要求在這個框架上面改。

起步的時候,并不需要對這個框架有多熟悉,先從這個框架的一些基本東西入手,實現一些最基本的功能。

程序猿出來混也基本上是如此,很少讓你拿一門語言從0開始的,基本上都是在框架中修修補補,創造。

或者在了解Win32窗體程序的同時,Win32最基本的WIN API同時,能提高一下自己面對框架的能力。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 欧美成人一区免费视频 | 色人久久 | 欧美黄色性生活视频 | 国产亚洲精品成人a | 欧美一级电影网 | 国产午夜精品一区二区三区四区 | 午夜精品久久久久久久99热浪潮 | 91成人亚洲 | 欧美a∨亚洲欧美亚洲 | 69性欧美高清影院 | 国产妞干网 | 国产免费久久久久 | 色就色 综合偷拍区91网 | 毛片免费视频在线观看 | 全黄性性激高免费视频 | 性少妇chinesevideo | 日韩毛片免费观看 | 久久成人激情视频 | 黄色免费在线网站 | 久久久久久久久久久久久久国产 | 91,视频免费看 | 成人福利电影在线观看 | 99精品视频久久精品视频 | 中文字幕综合在线观看 | 国产羞羞视频在线观看免费应用 | 久草在线最新免费 | 免费国产一级淫片 | 国产一级小视频 | 久久久久久久久国产 | 久在线观看福利视频69 | 狠狠干狠狠操 | porno video hd 365hd | 黄网站在线免费看 | 国产69精品久久久久久野外 | 青草av.久久免费一区 | 亚洲成人精品在线 | 亚洲一二三久久 | 国产精品99久久久久久宅女 | 国产毛片网 | 国产一区日韩一区 | 性爱在线免费视频 |