次のプログラムはBasicCompiler.exeに含まれるActiveBasic Compiler&Debuggerをメインウインドウにしてみる例。
このようにリーソースすることで、AB側のコードを大幅に減らすことができる。

Declare Function DialogBox Lib "user32" Alias "DialogBoxParamA" ( _
hInstance As HINSTANCE ,_
lpTemplateName As *Byte ,_
hWndParent As HWND ,_
lpDialogFunc As *DWord ,_
dwInitParam As *DWord ,_
) As *Long

Declare Function EndDialog Lib "User32" Alias "EndDialog" ( _
hDlg As HWND,_
nResult As *Long _
) As Long


Const IDD_DIALOG1 = 101
Main()

Sub Main()
Dim hInst As HINSTANCE

hInst = LoadLibrary("BasicCompiler.exe")
If hInst = 0 Then
MessageBox(NULL, "インスタンス取得失敗", "", MB_OK)
End If

DialogBox(hInst, IDD_DIALOG1, NULL, AddressOf(mf), 0)
FreeLibrary(hInst)
End Sub

Function mf(hdlg As HWND, msg As Long, wp As Long, lp As Long) As DWord
mf = FALSE
Select Case msg
Case WM_INITDIALOG
mf = TRUE
Case WM_COMMAND
Select Case LOWORD(wp)
Case IDCANCEL
EndDialog(hdlg, IDCANCEL)
mf = TRUE
End Select
End Select
End Function

タグ:

+ タグ編集
  • タグ:

このサイトはreCAPTCHAによって保護されており、Googleの プライバシーポリシー利用規約 が適用されます。

最終更新:2010年01月09日 06:53