我想在按一个按钮以后能够显示一个对话框,但为什么总是显示不了,看了一个上午没看出名堂
请前辈指点迷津啊,以下是代码,能够直接编译
=======================MAIN。CPP==========================#include<windows.h>
#include<stdio.h>
#include<fstream>
#include<string>
#include"resource.h"
using namespace std;
LRESULT CALLBACK WindowProc(
HWND hwnd, // handle to window
UINT uMsg, // message identifier
WPARAM wParam, // first message parameter
LPARAM lParam // second message parameter
);
int CALLBACK DlgProc(
HWND hwnd, // handle to window
UINT uMsg, // message identifier
WPARAM wParam, // first message parameter
LPARAM lParam // second message parameter
);
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nShowCmd)
{
//填写窗口类
WNDCLASS wndobj;
MSG msg;//消息结构
wndobj.hInstance=hInstance;
wndobj.lpszClassName="NO_1";
wndobj.lpszMenuName =NULL;
wndobj.cbClsExtra =NULL;
wndobj.cbWndExtra =NULL;
wndobj.lpfnWndProc=WindowProc;
wndobj.style =CS_HREDRAW|CS_VREDRAW;
wndobj.hIcon =LoadIcon(hInstance,"IDI_ICON2");
wndobj.hCursor = NULL;
wndobj.hbrBackground =(HBRUSH)GetStockObject(WHITE_BRUSH);
//申请注册窗口类
if (!RegisterClass(&wndobj))
{
MessageBox(NULL,"Register Error!","information",MB_ICONSTOP);
return 0;
}
//********************************************************
//实例化窗口类
HWND hwnd;
hwnd=0;
hwnd=CreateWindow(
"NO_1",
"First Window",
WS_OVERLAPPEDWINDOW|WS_HSCROLL|WS_VSCROLL,//加上滚动条*关注点*
CW_USEDEFAULT,
CW_USEDEFAULT,
400,400,
NULL,NULL,
hInstance,NULL);
if (!hwnd)
{
MessageBox(NULL,"CreateWindow Error!","information",MB_ICONSTOP);
return 0;
} HWND hbutton;
hbutton=CreateWindow(
"BUTTON",
"关于",
BS_PUSHBUTTON|WS_VISIBLE|WS_CHILD,//加上滚动条*关注点*
0,
200,
200,20,
hwnd,(HMENU)99,
NULL,NULL);//********************************************
//显示窗体
ShowWindow(hwnd,SW_SHOWDEFAULT);
UpdateWindow(hwnd);
//=============================================
//消息发送器
while(GetMessage(&msg,NULL,0,0))
{
TranslateMessage (&msg) ;
DispatchMessage (&msg) ;
}
return 0;
}
//======================回调函数定义==============================
LRESULT CALLBACK WindowProc(
HWND hwnd, // handle to window
UINT uMsg, // message identifier
WPARAM wParam, // first message parameter
LPARAM lParam // second message parameter
)
{
static HDC hdc ;//设备句柄
static PAINTSTRUCT ps ;//数据结构
static HMENU hmenu;//系统菜单
static HINSTANCE hInstance;
static POINT point;
switch (uMsg)
{
case WM_CREATE :
hInstance = ((LPCREATESTRUCT) lParam)->hInstance ;
return 0 ;
case WM_COMMAND :
switch (LOWORD (wParam))
{
case 99 :
DialogBox (hInstance, "IDD_DIALOG1", hwnd, DlgProc) ;
//MessageBox(NULL,"gg","gg",MB_OK);
break ;
}
break;
case WM_DESTROY :
PostQuitMessage (0) ;
return 0 ;
}
return DefWindowProc (hwnd, uMsg, wParam, lParam) ;
}
//=======================================================
int CALLBACK DlgProc(
HWND hwnd, // handle to window
UINT uMsg, // message identifier
WPARAM wParam, // first message parameter
LPARAM lParam // second message parameter
)
{
switch (uMsg)
{
case WM_INITDIALOG :
MessageBox(NULL,"gg","gg",MB_OK);
return TRUE ;
case WM_COMMAND :
switch (LOWORD (wParam))
{
case IDOK :
case IDCANCEL :
EndDialog (hwnd, 0) ;
return TRUE ;
}
break ;
}
return FALSE ;
}
===========================MYRC。RC===============================
//Microsoft Developer Studio generated resource script.
//
#include "resource.h"#define APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 2 resource.
//
#include "afxres.h"/////////////////////////////////////////////////////////////////////////////
#undef APSTUDIO_READONLY_SYMBOLS/////////////////////////////////////////////////////////////////////////////
// Chinese (P.R.C.) resources#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_CHS)
#ifdef _WIN32
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED
#pragma code_page(936)
#endif //_WIN32#ifdef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// TEXTINCLUDE
//1 TEXTINCLUDE DISCARDABLE
BEGIN
"resource.h\0"
END2 TEXTINCLUDE DISCARDABLE
BEGIN
"#include ""afxres.h""\r\n"
"\0"
END3 TEXTINCLUDE DISCARDABLE
BEGIN
"\r\n"
"\0"
END#endif // APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Dialog
//IDD_DIALOG1 DIALOGEX 0, 0, 187, 94
STYLE DS_MODALFRAME | WS_POPUP
FONT 10, "宋体"
BEGIN
DEFPUSHBUTTON "OK",IDOK,67,73,50,14,0,WS_EX_RTLREADING
LTEXT "这个是一个对话框例子",IDC_STATIC,15,13,78,11
ICON IDI_ICON1,IDC_STATIC,160,7,20,20,SS_NOTIFY |
SS_CENTERIMAGE | SS_RIGHTJUST | SS_REALSIZEIMAGE |
SS_SUNKEN | WS_BORDER
END
/////////////////////////////////////////////////////////////////////////////
//
// DESIGNINFO
//#ifdef APSTUDIO_INVOKED
GUIDELINES DESIGNINFO DISCARDABLE
BEGIN
"IDD_DIALOG1", DIALOG
BEGIN
LEFTMARGIN, 7
RIGHTMARGIN, 180
TOPMARGIN, 7
BOTTOMMARGIN, 87
END
END
#endif // APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Icon
//// Icon with lowest ID value placed first to ensure application icon
// remains consistent on all systems.
IDI_ICON1 ICON DISCARDABLE "ICON1.ICO"
IDI_ICON2 ICON DISCARDABLE "ICON2.ICO"
#endif // Chinese (P.R.C.) resources
/////////////////////////////////////////////////////////////////////////////#ifndef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 3 resource.
//
/////////////////////////////////////////////////////////////////////////////
#endif // not APSTUDIO_INVOKED==========================================================================
请前辈指点迷津啊,以下是代码,能够直接编译
=======================MAIN。CPP==========================#include<windows.h>
#include<stdio.h>
#include<fstream>
#include<string>
#include"resource.h"
using namespace std;
LRESULT CALLBACK WindowProc(
HWND hwnd, // handle to window
UINT uMsg, // message identifier
WPARAM wParam, // first message parameter
LPARAM lParam // second message parameter
);
int CALLBACK DlgProc(
HWND hwnd, // handle to window
UINT uMsg, // message identifier
WPARAM wParam, // first message parameter
LPARAM lParam // second message parameter
);
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nShowCmd)
{
//填写窗口类
WNDCLASS wndobj;
MSG msg;//消息结构
wndobj.hInstance=hInstance;
wndobj.lpszClassName="NO_1";
wndobj.lpszMenuName =NULL;
wndobj.cbClsExtra =NULL;
wndobj.cbWndExtra =NULL;
wndobj.lpfnWndProc=WindowProc;
wndobj.style =CS_HREDRAW|CS_VREDRAW;
wndobj.hIcon =LoadIcon(hInstance,"IDI_ICON2");
wndobj.hCursor = NULL;
wndobj.hbrBackground =(HBRUSH)GetStockObject(WHITE_BRUSH);
//申请注册窗口类
if (!RegisterClass(&wndobj))
{
MessageBox(NULL,"Register Error!","information",MB_ICONSTOP);
return 0;
}
//********************************************************
//实例化窗口类
HWND hwnd;
hwnd=0;
hwnd=CreateWindow(
"NO_1",
"First Window",
WS_OVERLAPPEDWINDOW|WS_HSCROLL|WS_VSCROLL,//加上滚动条*关注点*
CW_USEDEFAULT,
CW_USEDEFAULT,
400,400,
NULL,NULL,
hInstance,NULL);
if (!hwnd)
{
MessageBox(NULL,"CreateWindow Error!","information",MB_ICONSTOP);
return 0;
} HWND hbutton;
hbutton=CreateWindow(
"BUTTON",
"关于",
BS_PUSHBUTTON|WS_VISIBLE|WS_CHILD,//加上滚动条*关注点*
0,
200,
200,20,
hwnd,(HMENU)99,
NULL,NULL);//********************************************
//显示窗体
ShowWindow(hwnd,SW_SHOWDEFAULT);
UpdateWindow(hwnd);
//=============================================
//消息发送器
while(GetMessage(&msg,NULL,0,0))
{
TranslateMessage (&msg) ;
DispatchMessage (&msg) ;
}
return 0;
}
//======================回调函数定义==============================
LRESULT CALLBACK WindowProc(
HWND hwnd, // handle to window
UINT uMsg, // message identifier
WPARAM wParam, // first message parameter
LPARAM lParam // second message parameter
)
{
static HDC hdc ;//设备句柄
static PAINTSTRUCT ps ;//数据结构
static HMENU hmenu;//系统菜单
static HINSTANCE hInstance;
static POINT point;
switch (uMsg)
{
case WM_CREATE :
hInstance = ((LPCREATESTRUCT) lParam)->hInstance ;
return 0 ;
case WM_COMMAND :
switch (LOWORD (wParam))
{
case 99 :
DialogBox (hInstance, "IDD_DIALOG1", hwnd, DlgProc) ;
//MessageBox(NULL,"gg","gg",MB_OK);
break ;
}
break;
case WM_DESTROY :
PostQuitMessage (0) ;
return 0 ;
}
return DefWindowProc (hwnd, uMsg, wParam, lParam) ;
}
//=======================================================
int CALLBACK DlgProc(
HWND hwnd, // handle to window
UINT uMsg, // message identifier
WPARAM wParam, // first message parameter
LPARAM lParam // second message parameter
)
{
switch (uMsg)
{
case WM_INITDIALOG :
MessageBox(NULL,"gg","gg",MB_OK);
return TRUE ;
case WM_COMMAND :
switch (LOWORD (wParam))
{
case IDOK :
case IDCANCEL :
EndDialog (hwnd, 0) ;
return TRUE ;
}
break ;
}
return FALSE ;
}
===========================MYRC。RC===============================
//Microsoft Developer Studio generated resource script.
//
#include "resource.h"#define APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 2 resource.
//
#include "afxres.h"/////////////////////////////////////////////////////////////////////////////
#undef APSTUDIO_READONLY_SYMBOLS/////////////////////////////////////////////////////////////////////////////
// Chinese (P.R.C.) resources#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_CHS)
#ifdef _WIN32
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED
#pragma code_page(936)
#endif //_WIN32#ifdef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// TEXTINCLUDE
//1 TEXTINCLUDE DISCARDABLE
BEGIN
"resource.h\0"
END2 TEXTINCLUDE DISCARDABLE
BEGIN
"#include ""afxres.h""\r\n"
"\0"
END3 TEXTINCLUDE DISCARDABLE
BEGIN
"\r\n"
"\0"
END#endif // APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Dialog
//IDD_DIALOG1 DIALOGEX 0, 0, 187, 94
STYLE DS_MODALFRAME | WS_POPUP
FONT 10, "宋体"
BEGIN
DEFPUSHBUTTON "OK",IDOK,67,73,50,14,0,WS_EX_RTLREADING
LTEXT "这个是一个对话框例子",IDC_STATIC,15,13,78,11
ICON IDI_ICON1,IDC_STATIC,160,7,20,20,SS_NOTIFY |
SS_CENTERIMAGE | SS_RIGHTJUST | SS_REALSIZEIMAGE |
SS_SUNKEN | WS_BORDER
END
/////////////////////////////////////////////////////////////////////////////
//
// DESIGNINFO
//#ifdef APSTUDIO_INVOKED
GUIDELINES DESIGNINFO DISCARDABLE
BEGIN
"IDD_DIALOG1", DIALOG
BEGIN
LEFTMARGIN, 7
RIGHTMARGIN, 180
TOPMARGIN, 7
BOTTOMMARGIN, 87
END
END
#endif // APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Icon
//// Icon with lowest ID value placed first to ensure application icon
// remains consistent on all systems.
IDI_ICON1 ICON DISCARDABLE "ICON1.ICO"
IDI_ICON2 ICON DISCARDABLE "ICON2.ICO"
#endif // Chinese (P.R.C.) resources
/////////////////////////////////////////////////////////////////////////////#ifndef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 3 resource.
//
/////////////////////////////////////////////////////////////////////////////
#endif // not APSTUDIO_INVOKED==========================================================================
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货