我想用 api做个界面 是不是要用到建个资源文件 画上一画 但然后怎样呢 比如要建个对话框
对话框上有几个按钮 和标签 图片显示什么的
哪位大侠 稍微指点一下 好乱
对话框上有几个按钮 和标签 图片显示什么的
哪位大侠 稍微指点一下 好乱
解决方案 »
- 发了三四个贴还没解决,索性高分悬赏!!
- 怎么用VC的rand和srand产生规定范围内的数,例如1-30, 20-50。请指点。
- 哪位高手来指点一下,有关HttpSendRequest的Post问题。
- Question:关于列表类的问题.
- 请教 单文档和多文档的使用 很简单
- 我要做c++手机开发,请问那里有下载VC++ SP3补丁的?谢谢
- 如何截短文件
- 请问SQL中的删除表语句怎么写?? Drop ...... 在线等。。。
- 二进制文件里边怎么存放的?怎么往二进制文件里写数据呢?
- 求教各位大侠:MFC ActiveX控件滚动问题
- VC++ 6.0问题
- 在线等!急!先谢谢!怎么把整形值写进数据库?
先建个资源文件,然后在资源文件中增加一个对话框,增加按钮,图片什么的(即你说的画一画),然后为这个对话框写它的处理函数。
再在main函数中调用DialogBoxParam函数。
例如:
DialogBoxParam(GetModuleHandle(0), MAKEINTRESOURCE(IDD_DLG_SAMPLE), NULL, (DLGPROC)SdkDialogProc, (LPARAM)NULL);
IDD_DLG_SAMPLE: 是对话框ID
SdkDialogProc:是对话框处理函数。你可以先填个NULL,感受一下API做出来的对话框。再完善这个函数。
下面的对话框处理函数只完成了最基本的几个命令,再要详细的功能就得根据你自己的需要添加了。
DWORD CALLBACK SdkDialogProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
switch (uMsg)
{
case WM_INITDIALOG:
break;
case WM_COMMAND:
if (LOWORD(wParam) == IDOK)
EndDialog( hwndDlg, 0 ); if (LOWORD(wParam) == IDCANCEL)
EndDialog( hwndDlg, 0 );
} return 0;
}
#include "resource.h" LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
return DialogBox(hInstance, (LPCTSTR)IDD_DIALOGBAR, 0, (DLGPROC)WndProc);
}LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
while(1);
return 0;
}
现在困扰我的是 调试程序一闪而过
{
while(1);
return 0;
}
中应写是处理消息,while(1);是死循环!
看不到窗口的
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
return DialogBox (hInstance, TEXT ("AboutBox"), NULL, (DLGPROC)AboutDlgProc) ;}BOOL CALLBACK AboutDlgProc (HWND hDlg, UINT message,WPARAM wParam, LPARAM lParam){ switch (message) { case WM_INITDIALOG : return TRUE ; case WM_COMMAND : switch (LOWORD (wParam)) { case IDOK : case IDCANCEL : //EndDialog (hDlg, 0) ; return TRUE ; } break ; } return FALSE ;}
还是一闪而过 大虾们快来救命