Windows組込ビットマップを表示 <TOP>
Windowsに組み込まれているビットマップ(OBM_LFARROWI:32734〜OBM_UPARROW:32753)を表示します。
DrawState イメージを加工して表示する
LoadImage 画像ファイルの読み込み
WindowsXP
Windows98
'================================================================ '= Windows組込ビットマップを表示
'= (DrawState.bas) '================================================================ #include "Windows.bi" ' イメージを加工して表示する Declare Function Api_DrawState& Lib "user32" Alias "DrawStateA" (ByVal hDC&, ByVal hbr&, ByVal lpOutputFunc&, ByVal lData&, ByVal wData&, ByVal X&, ByVal Y&, ByVal cx&, ByVal cy&, ByVal fuFlags&) ' 画像ファイルの読み込み Declare Function Api_LoadImage& Lib "user32" Alias "LoadImageA" (ByVal hInst&, ByVal lpszName&, ByVal uType&, ByVal cxDesired&, ByVal cyDesired&, ByVal fuLoad&) ' 指定されたウィンドウのクライアント領域または画面全体を表すディスプレイデバイスコンテキストのハンドルを取得 Declare Function Api_GetDC& Lib "user32" Alias "GetDC" (ByVal hWnd&) ' デバイスコンテキストを解放 Declare Function Api_ReleaseDC& Lib "user32" Alias "ReleaseDC" (ByVal hWnd&, ByVal hDC&) #define IMAGE_BITMAP 0 'ビットマップ #define IMAGE_CURSOR 2 'カーソル #define IMAGE_ENHMETAFILE 3 '拡張メタファイル #define IMAGE_ICON 1 'アイコン #define DST_BITMAP &H4 'ビットマップ #define LR_DEFAULTSIZE &H40 '標準サイズで表示 '/ Windows組込ビットマップ(32734〜32753) #define OBM_LFARROWI 32734 #define OBM_RGARROWI 32735 #define OBM_DNARROWI 32736 #define OBM_UPARROWI 32737 #define OBM_COMBO 32738 #define OBM_MNARROW 32739 #define OBM_LFARROWD 32740 #define OBM_RGARROWD 32741 #define OBM_DNARROWD 32742 #define OBM_UPARROWD 32743 #define OBM_RESTORED 32744 #define OBM_ZOOMD 32745 #define OBM_REDUCED 32746 #define OBM_RESTORE 32747 #define OBM_ZOOM 32748 #define OBM_REDUCE 32749 #define OBM_LFARROW 32750 #define OBM_RGARROW 32751 #define OBM_DNARROW 32752 #define OBM_UPARROW 32753 '================================================================ '= '================================================================ Declare Sub Button1_on edecl () Sub Button1_on() Var Ret As Long Var hDC As Long Var hImage As Long Var x As Integer Var OBM As Integer hDC = Api_GetDC(GethWnd) x = 10 For OBM = 32734 To 32753 hImage = Api_LoadImage(0, OBM, IMAGE_BITMAP, 0, 0, LR_DEFAULTSIZE) Ret = Api_DrawState(hDC, 0, 0, hImage, 0, x, 10, 0, 0, DST_BITMAP) x = x + 20 Next Ret = Api_ReleaseDC(GethWnd, hDC) End Sub '================================================================ '= '================================================================ While 1 WaitEvent Wend Stop End