如何使用win32 C将旋转控件添加到对话框?

时间:2009-09-08 13:02:13

标签: c++ winapi

只想知道如何使用C程序(win32 / code :: block / mingw编译器)在对话框中添加旋转控件(在另一个名称中,向上/向下控制)

2 个答案:

答案 0 :(得分:3)

最简单的方法是使用资源编辑器设计对话框。 Code :: Blocks不附带一个,但ResEdit是我用过的。

如果您手动编辑.rc文件,则在对话框定义部分中添加类似于以下内容的行:

CONTROL         "", IDC_SPIN1, UPDOWN_CLASS, UDS_ARROWKEYS, 7, 22, 11, 14

如果您想以编程方式添加它,可以通过CreateWindow API函数进行添加,例如

HWND hwndUpDown = CreateWindow(UPDOWN_CLASS, NULL, 
                        WS_CHILD | WS_VISIBLE | UDS_ARROWKEYS,
                        7, 22, 11, 14, 
                        hwndDlg, NULL, hInst, NULL);

其中hwndDlg参数是对话窗口的HWND。调用此方法的好地方是处理对话框的WM_INITDIALOG消息。

答案 1 :(得分:0)

这取决于。有两种方法可以创建对话框。以编程方式,或通过对话框资源。在第一种情况下,您在第二种情况CreateDialogIndirect中致电CreateDialog。我假设你提到CreateDialogIndirect,因为你提到“在C中”。在您使用的对话框模板中,只需添加旋转控件即可。您需要在DLGTEMPLATEEX.windowClass中按名称标识它。