📄 test.c
字号:
////////////////////////////////////////////////////////////////////////////////////////////////////
// 说明: StyleAll
// 更新: 2003-2-14
////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////
// 预处理
#include <Windows.h>
#include <CommCtrl.h>
#include "Test.h"
#include "..\\ClassXP\\ClassXP.h"
#pragma warning(disable: 4311)
#pragma comment(lib, "ComCtl32.lib")
#ifdef _DEBUG
#pragma comment(lib, "..\\Debug\\ClassXP.lib")
#else // _DEBUG
#pragma comment(lib, "..\\Release\\ClassXP.lib")
#endif // _DEBUG
////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////
// 函数声明
LRESULT CALLBACK MainDlgProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////
// 全局变量
BOOL bSetCurrent = FALSE;
BOOL bSetDialog = FALSE;
BOOL bSetThread = FALSE;
HMODULE hLibrary = NULL;
FARPROC pEnableClassXP = NULL;
////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////
// 入口函数
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int iCmdShow)
{
InitCommonControls();
DialogBox(GetModuleHandle(NULL), MAKEINTRESOURCE(IDD_DIALOG_MAIN), NULL, (DLGPROC) MainDlgProc);
return 0;
}
////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////
// 主窗口回调函数
LRESULT CALLBACK MainDlgProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
HICON hIcon;
char szFileName[MAX_PATH];
OPENFILENAME OpenFileName;
switch (uMsg)
{
case WM_INITDIALOG:
hIcon = LoadIcon(GetModuleHandle(NULL), MAKEINTRESOURCE(IDI_ICON_MAIN));
SetClassLong(hWnd, GCL_HICON, (LONG) hIcon);
DeleteObject(hIcon);
SendDlgItemMessage(hWnd, IDC_CHECK3, BM_SETCHECK, BST_CHECKED, 0);
SendDlgItemMessage(hWnd, IDC_CHECK4, BM_SETCHECK, BST_INDETERMINATE, 0);
SendDlgItemMessage(hWnd, IDC_COMBO1, CB_ADDSTRING, 0, (LPARAM) "很不错吧");
SendDlgItemMessage(hWnd, IDC_COMBO1, CB_ADDSTRING, 0, (LPARAM) "项目二");
SendDlgItemMessage(hWnd, IDC_COMBO1, CB_ADDSTRING, 0, (LPARAM) "项目一");
SendDlgItemMessage(hWnd, IDC_COMBO1, CB_SETCURSEL, 0, 0);
SendDlgItemMessage(hWnd, IDC_COMBO2, CB_ADDSTRING, 0, (LPARAM) "很好");
SendDlgItemMessage(hWnd, IDC_COMBO2, CB_ADDSTRING, 0, (LPARAM) "不好");
SendDlgItemMessage(hWnd, IDC_COMBO2, CB_ADDSTRING, 0, (LPARAM) "漂亮极了");
SendDlgItemMessage(hWnd, IDC_COMBO2, CB_SETCURSEL, 0, 0);
break;
case WM_COMMAND:
if (HIWORD(wParam) == BN_CLICKED)
{
switch (LOWORD(wParam))
{
case IDC_BUTTON1:
MessageBox(0, "OK", 0, 0);
break;
case IDC_BUTTON_CURRENT:
if (bSetCurrent == FALSE)
{
ClassXP(GetDlgItem(hWnd, IDC_BUTTON_CURRENT), TRUE);
SetDlgItemText(hWnd, IDC_BUTTON_CURRENT, "取消当前按钮(&B)");
bSetCurrent = TRUE;
}
else
{
ClassXP(GetDlgItem(hWnd, IDC_BUTTON_CURRENT), FALSE);
SetDlgItemText(hWnd, IDC_BUTTON_CURRENT, "设置当前按钮(&B)");
bSetCurrent = FALSE;
}
break;
case IDC_BUTTON_THREAD:
if (bSetThread == FALSE)
{
ClassXP(0, TRUE);
SetDlgItemText(hWnd, IDC_BUTTON_DIALOG, "取消当前线程控件(&T)");
bSetThread = TRUE;
}
else
{
ClassXP(0, FALSE);
SetDlgItemText(hWnd, IDC_BUTTON_DIALOG, "设置当前线程控件(&T)");
bSetThread = FALSE;
}
break;
case IDC_BUTTON_MESSAGEBOX:
MessageBox(hWnd, "看看 MessageBox() 弹出的对话框的按钮样子:)","测试", MB_ICONINFORMATION);
break;
case IDC_BUTTON_OPENFILENAME:
szFileName[0] = '\0';
ZeroMemory(&OpenFileName, sizeof(OPENFILENAME));
OpenFileName.lStructSize = sizeof(OPENFILENAME);
OpenFileName.hwndOwner = hWnd;
OpenFileName.lpstrFile = szFileName;
OpenFileName.nMaxFile = MAX_PATH;
OpenFileName.lpstrDefExt = ".bmp";
OpenFileName.lpstrFilter = "图像文件(*.bmp;*.jpg;*.gif)\0*.bmp;*.jpg;*.gif\0所有文件(*.*)\0*.*\0";
OpenFileName.Flags = OFN_ENABLESIZING | OFN_FILEMUSTEXIST | OFN_HIDEREADONLY;
if(GetOpenFileName(&OpenFileName) == TRUE)
MessageBox(hWnd, szFileName, "公用对话框测试", MB_ICONINFORMATION);
break;
}
}
break;
case WM_CLOSE:
EndDialog(hWnd, 0);
}
return FALSE;
}
////////////////////////////////////////////////////////////////////////////////////////////////////
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -