rt
解决方案 »
- 关于OpenGl渲染问题
- PostQueuedCompletionStatus是不是到最后一个client退出的时候才用?
- socket最最基础的问题
- 如何得到一个文件夹(或者可以说是这个路径)???
- CSocket里的m_hSocket和socket有什么区别
- CView类和CFrame类有什么区别?
- 请教:桌面上的那个“我的电脑”,上面是图片,下面是说明文字,还可以拖着到处乱跑。如何实现这样的控件?急!立即结帐!谢谢!
- 怎样获取硬盘名
- 请问用VC画图,如何画出笔宽是0.01mm的线?
- 求大牛之助 , 不胜感激: VS2010编译x265后, 运行报错,无法启动
- 怎么才能换行显示?
- 想ACDSee一样的浏览图片
1.填写窗口的属性
2.注册一个窗口(register a window)
3.显示(show)
{
WNDCLASSEX wndclass; // 用于申明窗口类的结构
HWND hWnd; // 程序的窗口句柄
MSG msg; // 接收窗口消息的结构 // 为创建窗口类填写类结构
wndclass.cbSize = sizeof (wndclass);
wndclass.style = CS_HREDRAW | CS_VREDRAW;
wndclass.lpfnWndProc = WndProc;
wndclass.cbClsExtra = 0;
wndclass.cbWndExtra = 0;
wndclass.hInstance = hInstance;
wndclass.hIcon = LoadIcon (NULL, IDI_APPLICATION);
wndclass.hCursor = LoadCursor (NULL, IDC_ARROW);
wndclass.hbrBackground = (HBRUSH) GetStockObject(WHITE_BRUSH);
wndclass.lpszMenuName = NULL;
wndclass.lpszClassName = "TestWindowClass";
wndclass.hIconSm = LoadIcon (NULL, IDI_APPLICATION);
// 创建窗口类
if (!RegisterClassEx(&wndclass)) return 0; // 用上面创建的类创建新窗口
hWnd = CreateWindowEx(0, //扩展窗口风格,0为默认
"TestWindowClass", //创建窗口所用的类
"First Program", //窗口名称看运行结果就知道了
WS_OVERLAPPEDWINDOW, //窗口风格OVERLAPPED风格(和记事本一样的),
CW_USEDEFAULT, //这四个参数定义了窗口的位置和大小,现为默认
CW_USEDEFAULT,
CW_USEDEFAULT,
CW_USEDEFAULT,
NULL, //父窗口句柄,程序没有,所以设为NULL
NULL, //菜单句柄没有为NULL
hInstance, //WinMain传递的实例句柄
NULL); //创建参数,用于给程序传递数据,程序没用到
if (!hWnd) return FALSE;
ShowWindow(hWnd, nCmdShow);
UpdateWindow(hWnd);
// 下面就是消息循环
while (GetMessage(&msg,NULL,0,0)) // 在消息队列中取消息直到收到退出消息QUIT_MESSAGE
{
TranslateMessage(&msg); // 翻译虚拟击键消息
DispatchMessage(&msg); // 将消息投递到对应的窗口
}
return msg.wParam; // 如果没有特殊要求,这里也可以是0代表成功执行
} LRESULT CALLBACK WndProc(HWND hwnd,UINT message,WPARAM wParam,LPARAM lParam)
{
switch (message) // 接受消息循环的函数,采用switch处理各种消息
{
case WM_CLOSE: // 窗口关闭前的消息(比如用户点了关闭按钮)
break; // 此时Windows还根本没有对窗口做任何事,可以用MessageBox来测试
case WM_DESTROY: // 窗口关闭以后的消息,此时Windows已经毁坏了窗口
PostQuitMessage(0);
return 0;
}
return DefWindowProc(hwnd, message, wParam, lParam); // 默认消息处理
}
右点dialog
选insert dialog