本帖最后由 Yzz化羽 于 2020-4-23 23:10 编辑
为什么显示不出来啊 , 不知道问题出在哪儿了。。。。
#include<Windows.h>
#include<tchar.h>
#include<CommCtrl.h>
#include<winuser.h>
static TCHAR szwindowClass[] = _T("WindowClass");
static TCHAR szTitle[] = _T("Yzz的窗口程序学习");
UINT IDC_BUTTON_1 = 200;
UINT IDC_BUTTON_2 = 300;
UINT IDC_BUTTON_3 = 310;
UINT IDC_LIST_1 = 301;
LRESULT CALLBACK WindowProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lparam) {
PAINTSTRUCT ps;
HDC hdc;
TCHAR greeting[] = _T("大家好,我是Yzz");
switch (uMsg)
{
case WM_CREATE:{
MessageBox(hWnd, _T("窗口创建成功"), _T("***"), MB_OK);
HWND hButtonWnd1 = CreateWindow(WC_BUTTON, _T("!你敢点吗"), WS_CHILD | BS_PUSHBUTTON | WS_VISIBLE, 100, 50, 100, 50,
hWnd, (HMENU)IDC_BUTTON_1, NULL, NULL);
HWND hButtonWnd2 = CreateWindow(WC_BUTTON, _T("你敢点吗!"), WS_CHILD | BS_PUSHBUTTON | WS_VISIBLE, 100,150, 100, 50,
hWnd, (HMENU)IDC_BUTTON_2, NULL, NULL);
HWND hEditWndl=CreateWindow(WC_EDIT,_T("编辑框中的我"),WS_CHILDWINDOW|WS_BORDER|WS_VISIBLE|ES_AUTOHSCROLL,100,250,100,50 ,
hWnd,(HMENU)IDC_BUTTON_3, NULL, NULL);
HWND list_1 = CreateWindow(WC_LISTVIEW, _T(" "), WS_CHILD | WS_VISIBLE | WS_BORDER || LVS_REPORT | LVS_SHOWSELALWAYS, 220, 50, 500, 200
, hWnd,(HMENU)IDC_LIST_1, NULL, NULL);
/* LVCOLUMN colInfo = { 0 };
colInfo.mask |= LVCF_WIDTH | LVCF_TEXT|LVCF_TEXT;
colInfo.fmt = LVCFMT_CENTER;
colInfo.cx = 50;
colInfo.pszText=(LPWSTR)_T("第一列");
ListView_InsertColumn(list_1, 0, &colInfo);*/
}
break;
case WM_COMMAND: {
UINT NcttlID = LOWORD(wParam);
UINT Ncode = HIWORD(wParam);
if (Ncode == BN_CLICKED) {
if (NcttlID == IDC_BUTTON_1) {
static int nButton1_ = 0;
static int nButton2_ = 0;
TCHAR szButton1[108] = { 0 };
_stprintf(szButton1,_T("就点击%d下?"),++nButton1_);
BOOL yzz= SetWindowText(GetDlgItem(hWnd, NcttlID), szButton1);
if (yzz == true) {
nButton2_++;
}
if (nButton2_ > 10) {
MessageBox(hWnd, _T("憨憨"), _T("***"), MB_OK);
}
else {
TCHAR szed[256] = { 0 };
GetDlgItemText(hWnd, IDC_BUTTON_3, szed, 256);
MessageBox(hWnd, szed, _T("***"), MB_OK);
}
}
else if (NcttlID == IDC_BUTTON_2) {
MessageBox(hWnd, _T("我被点击了"), _T("***"), MB_OK);
}
}
}
break;
case WM_PAINT: {
hdc = BeginPaint(hWnd, &ps);
TextOut(hdc, 5, 5, greeting, _tcslen(greeting));
EndPaint(hWnd, &ps); }
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
case WM_SIZE:
if (wParam == SIZE_MAXIMIZED) {
MessageBox(hWnd, _T("窗口被最大化创建啦!"), _T("****"), MB_OK);
}
break;
case WM_CLOSE: {
int yz = MessageBox(NULL, _T("是否关闭窗口"), _T("^^^^^"), MB_OKCANCEL);
if (yz == IDOK)return DefWindowProc(hWnd, uMsg, wParam, lparam);
}
break;
default:
return DefWindowProc(hWnd, uMsg, wParam, lparam);
break;
}
return 0;
}
int WINAPI WinMain(HINSTANCE hIatance,HINSTANCE hprevInstance,LPSTR lpCmdLine,int nCmdShow) {
WNDCLASSEX wcex = { 0 };
wcex.cbSize = sizeof(WNDCLASSEX);
wcex.lpfnWndProc = WindowProc;
wcex.lpszClassName = szwindowClass;
if (!RegisterClassEx(&wcex)) {
MessageBox(NULL, _T("注册窗口类失败"), _T("Tip"), NULL);
return 1;
}
HWND hWnd = CreateWindow(
szwindowClass,
szTitle,
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, CW_USEDEFAULT,
1000, 800,
NULL,
NULL,
hIatance,
NULL
);
if(!hWnd) {
MessageBox(NULL, _T("窗口创建失败"), _T("****"), NULL);
return 1;
}
ShowWindow(hWnd, SW_SHOWDEFAULT);
MSG msg = { 0 };
while (GetMessage(&msg, NULL, 0, 0)) {
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return (int)msg.wParam;
} |