selectobject函式是將物件選定到指定的裝置場境中。具體實現**如下:
#001 hgdiobj
#002 winapi
#003 selectobject(hdc hdc,
#004 hgdiobj hgdiobj)
#005
#016
獲取選擇dc的物件正確的控制代碼。
#017 hgdiobj = gdifixuphandle(hgdiobj);
#018 if (!gdiishandlevalid(hgdiobj))
#019
#022
獲取這個物件的型別。
#023 utype = gdi_handle_get_type(hgdiobj);
#024
根據不同的型別呼叫合適的函式把物件設定到dc裡。
#025 switch (utype)
#026
#073 #endif
#074 // default for select object font
#075 return ntgdiselectfont(hdc, hgdiobj);
#076
#077 #if 0
#078 case gdi_object_type_metadc:
#079 return mfdrv_selectobject( hdc, hgdiobj);
#080 case gdi_object_type_emf:
#081 pldc pldc = gdigetldc(hdc);
#082 if ( !pldc ) return null;
#083 return emfdrv_selectobject( hdc, hgdiobj);
#084 #endif
#085 case gdi_object_type_colorspace:
#086 setcolorspace(hdc, (hcolorspace) hgdiobj);
#087 return null;
#088
#089 case gdi_object_type_palette:
#090 default:
#091 setlasterror(error_invalid_function);
#092 return null;
#093 }
#094
#095 return null;
#096 }
#097
reactos作業系統實現 178
sendmessagew函式主要用來向視窗傳送訊息。下面就是它的實現 001 lresult winapi 002 sendmessagew hwnd wnd,003 uint msg,004 wparam wparam,005 lparam lparam 006 028 029 填寫訊息結構。03...
reactos作業系統實現 187
隨著全球化的發展,開發軟體都是面向多語言的環境。目前大多數程式都是採用不同字型來顯示不同語言的辦法,那麼有沒有一種更好的辦法,一種字型就可以解決全球語言的顯示呢?答案肯定的,它就是採用邏輯字型ms shell dlg和ms shell dlg2。比如開發應用程式時,就看到在資源裡可以設定ms she...
reactos作業系統實現 193
selectobject函式是將物件選定到指定的裝置場境中。具體實現 如下 001 hgdiobj 002 winapi 003 selectobject hdc hdc,004 hgdiobj hgdiobj 005 016 獲取選擇dc的物件正確的控制代碼。017 hgdiobj gdifixu...