Windows API一日一練(44)wsprintf函數

 Windows

Windows API一日一練(48)PostThreadMessage函數

 Windows

Windows API一日一練(24)DrawText函數

 DrawText函數與前面介紹的TextOut函數都是文本輸出函數,但它們是有區別的。DrawText函數是格式化輸出函數,而TextOut函數不具備這樣的功能。因而DrawText函數比TextOut函數功能強大,可以讓文本輸出時靠左對齊,或者靠右對齊,或者中間對齊,還可以讓文本適應輸出矩形內,如果超出時可以截斷,或者顯示為省略符號的方式。DrawText函數在表格方式顯示時肯定要使用到的函數。函數DrawText聲明如下:WINUSERAPIintWINAPIDrawTextA(    _

Windows API一日一練(31)MoveToEx和LineTo函數

 現在的世界流行圖形介面,而不是文字,因此在軟體開發裡,肯定需要畫圖的,比如簡單地畫線,畫一些比較特別的圖形。比如讓你畫一個走動的時鐘,就需要不斷地畫秒針、分針等等。MoveToEx是用來移動當前畫筆的位置,LineTo是用來畫直線的函數,其實在電腦圖形裡的直線顯示是使用點陣圖形學裡的原理。函數MoveToEx和LineTo聲明如下:WINGDIAPI BOOL WINAPI MoveToEx( __in HDC hdc, __in int x, __in int y, __out_opt

Windows API一日一練(25)CreateSolidBrush函數

 當你看到Windows顯示的按鈕時,背景顏色是灰色的。當你看到預設的視窗背景時,它是白色的。當你的老闆需要你建立一個黑色背景的按鈕時,你會怎麼樣做呢?其實在Windows裡先用API函數CreateSolidBrush建立畫刷,然後調用FillRect函數來填充背景。這樣來,不管你需要什麼樣的背景,都隨心所欲了吧。現在先來搞懂CreateSolidBrush函數,下次再來練習FillRect。函數CreateSolidBrush聲明如下:WINGDIAPI HBRUSH WINAPI

Windows API一日一練(7)ShowWindow函數

 ShowWindow的API函數是顯示視窗,但它在第一次調用和以後的調用是有區別的。第一次調用時,它的輸入參數nCmdShow是需要輸入WinMain函數裡傳入來的nCmdShow參數,而不能是其它參數。 函式宣告如下:WINUSERAPIBOOLWINAPIShowWindow(    __in HWND hWnd,    __in int

Windows API一日一練(27)SetBkMode函數

 上面已經介紹輸出紅色的字串時,發現背景的黑色也變成白色了,這樣的輸出是破壞背景的。那需要使用什麼方法來保持背景不變,而又能輸出紅色的字串呢?比如按鈕的文字顏色是黑色的,而背景是灰色的。這就需要使用SetBkMode函數來設定DrawText函數的輸出方式,顯示裝置共有兩種輸出方式:OPAQUE和TRANSPARENT。OPAQUE的方式是用當前背景的畫刷的顏色輸出顯示文字的背景,而TRANSPARENT是使用透明的輸出,也就是文字的背景是不改變的。函數SetBkMode聲明如下:WINGDIA

Windows API一日一練(10)LoadAccelerators函數

 當使用者使用軟體時,往往有些功能是最常用的功能。作為開發人員,就需要讓使用者感覺到這個軟體好用,這樣就需要把他們最常用的功能用起來最方便,最快捷,能提高生產效率。在這方面,微軟是做到家了,比如在鍵盤上有一個Windows鍵,Windows很多功能都可以通過這個鍵與其它鍵來組合成快速鍵,提高使用的方便性。現在就來介紹一下怎麼樣讓你的程式也方便使用,就是使用快速鍵。函數LoadAccelerators聲明如下:WINUSERAPIHACCELWINAPILoadAcceleratorsA(   

Windows API一日一練(3)使用命令列參數

 面再接著練習使用命令列參數,先在VC2005調試設定裡設定輸入參數,如:  下載 (61.3 KB)2008-10-8 20:22可以看到在Command Arguments裡輸入給程式傳送的命令列參數(cmd1 cmd2 命令列參數)。接著修改原來的程式如下:#001 int APIENTRY _tWinMain(HINSTANCE hInstance,#002                       HINSTANCE hPrevInstance,#003             

Windows API一日一練(21)SetWindowLongPtr和GetWindowLongPtr函數

 在軟體開發裡,大家一直對著這個問題是執著的,那是“複用”。總想自己寫出來的代碼,可以適應性很強,到那裡都可以落地生根。因此,物件導向的語言就層出不窮,每個都堅稱可以最大地複用代碼。在物件導向裡,C++是非常強大的。下面就來用C++把上面介紹的程式封裝起來,這樣可以複用,或者說條理更加清晰。#001 #002 int APIENTRY _tWinMain(HINSTANCE hInstance,#003                       HINSTANCE hPrevInstance,

Windows API一日一練(4)MessageBox函數

 為了顯示提示資訊給使用者,Windows是提供了一個非常方便的API函數MessageBox給使用者使用,使用這個API函數可以顯示簡單的文字資訊出來,提醒或提示使用者進行下一步操作。函式宣告如下:WINUSERAPIintWINAPIMessageBoxA(    __in_opt HWND hWnd,    __in_opt LPCSTR lpText,    __in_opt LPCSTR lpCaption,    __in UINT

Windows API一日一練(22)TextOut函數

 文本輸出,從來就是比較常用的方式,自從發明文字以來,就應缺少不了文字的顯示了。在以前,是書寫到白紙上,讓別人看懂它。現在到了資訊的時代,當然是顯示在螢幕上,即使你是不懂書法的,也可以顯示出驚人的書法文字出來。在視窗裡顯示文字出來,就可以使用TextOut函數,當然不只這一個API函數可以顯示字元了。TextOut函數是使用當前裝置的屬性來顯示文字的,比如裝置屬性有字型類型,字型的顏色,字型背景的顏色等等。函數TextOut聲明如下:WINGDIAPI BOOL WINAPI TextOutA(

Windows API一日一練(23)SetTextColor函數

 世界是多姿多彩的,色彩是不可以缺少的。在軟體開發裡,不同的字元顏色往往用來區分不同的資料類型,比如嚴重的警告,就是使用紅色,當然這也是跟交通裡紅綠燈是一樣的道理。最根本的原因,還是人類對自然的選擇。畢竟人眼對不同的顏色作出了不同的選擇。由於紅色光波穿透性比較好,所以就形成以紅色來警告的訊號。說來也怪,人類的身體不管是什麼顏色,流著的血一定是紅色的。在軟體開發裡,要把輸出字元的顏色符合現在人位的習慣,不要背離它,否則就不是“以人為本”的科學理念,如果開發出不是“以人為本”的軟體是沒有客戶使用的。

Windows API一日一練(6)CreateWindow函數

 一個視窗要顯示,先要把它建立出來。那就需要調用API函數CreateWindow了,所以在註冊視窗後的第二步,就需要調用建立視窗函數。 函式宣告如下:WINUSERAPIHWNDWINAPICreateWindowExA(    __in DWORD dwExStyle,    __in_opt LPCSTR lpClassName,    __in_opt LPCSTR lpWindowName,    __in DWORD dwStyle,    __in int X,    __in

Windows API一日一練(2)使用應用程式控制代碼

 從上面這段程式就可以看到,_tWinMain是應用程式的入口函數,這裡是使用它的宏,定義在tchar.h標頭檔裡,為什麼要這樣作宏定義的呢?由於Windows的應用程式要適應UNICODE和以前單字元的應用程式,由於Windows這兩個API的定義是不一樣的,如下:UNICODE的定義: #define _tWinMain   wWinMain單字元的定義: #define _tWinMain  

Windows API一日一練(28)CreateFont函數

 文字的出現曆史可以追溯到甲骨文的使用,直到今天使用的宋體文字。在軟體開發裡,經常遇到是跨國語言的使用,由於世界在變平,全球在變小,交通運輸非常發達,由我所在的深圳,向東坐飛機12個小時就可以到達倫敦,向西坐飛機12小時就可以到達美國,可算得上朝發夕至。比如像炒外匯的人,一天可以不用睡覺都在工作著,比如早上炒東京的匯市,下午就可以炒倫敦的,晚上就可以炒紐約的了。軟體的開發,也在全球化,比如昨晚在美國開發,早上就可以變成中國開發同樣的軟體了,一天24小時開發,這樣加速軟體的開發。全球的市場已經變得

Windows API一日一練(72)GetUserName函數

 Windows

Windows API一日一練(30)GetTextMetrics函數

在做報表裡,經常要把輸出的內容進行錯落有致的排列,讓使用者看起來更加舒服。比如使用標題的字型輸出後,再使用其小號的字型進行輸出。這樣就需要知道每種字型的高度,才讓兩行文字輸出不重疊在一起,就需要計算每種字型的高度。這時就需使用GetTextMetrics函數來擷取字型的高度。函數GetTextMetrics聲明如下:#ifndef NOTEXTMETRICWINGDIAPI BOOL WINAPI GetTextMetricsA( __in HDC hdc, __out

總頁數: 1345 1 .... 362 363 364 365 366 .... 1345 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.