控件开发 wpf控件

控件开发 wpf控件

在Win32环境下,如何创建那些常用的基本控件?通过MSDN,我们可以知道创建窗口还是控件是通过函数CreateWindow还是CreateWindowEx来完成的。除了一个扩展的样式,这两个函数完全相同。以CreateWindow为例来说明,该功能的原型如下:

HWND create window(LPCTSTR LP class name,

LPCTSTR lpWindowName,

DWORD dwStyle,

int x,int y,int nWidth,int nHeight,

HWND hWndParent,

HMENU hMenu,

处理hInstance,

PVOID lpParam);

这些参数如下:

LpClassName:窗口或控件的类名。

LpWindowName:窗口或控件的名称或文本。

DwStyle:窗口或控件样式

x,y,nWidth,nHeight:窗口或控件的坐标、宽度和高度。

窗口或控件的父窗口。

HMenu:窗口菜单或控件的ID。

HInstance: window实例,控件一般是空。

LpParam:窗口或控制参数,将被传递到创建消息中。

那么如何实现每个基本控件呢?让我们逐一创建它们。

创建标签/静态文本:

CreateWindow(“STATIC “,TEXT(“Test Text “),WS_CHILD|WS_VISIBLE|SS_LEFT,10,10,250,30,hwnd,(HMENU)IDC_STATIC1,NULL,NULL);

通过这个调用,创建了一个静态文本。

创建按钮:

CreateWindow(“BUTTON “,TEXT(” Open(& amp;o)”)、WS_CHILD|WS_VISIBLE、170、110、90、30、

hwnd,(HMENU)IDC_BUTTON1,NULL,NULL);

创建编辑框:

CreateWindow( “Edit “,NULL,WS_CHILD|WS_VISIBLE|WS_BORDER,10,50,250,30,

hwnd,(HMENU)IDC_EDIT1,NULL,NULL);

创建控件容器框架

CreateWindow(“BUTTON “,TEXT (“color “),ws _ child | ws _ visible | bs _ group box,360,90,130,140,hwnd,(hmenu) IDC _ frame,null,null);

创建列表框:

CreateWindow(“LISTBOX “,NULL,WS _ CHILD | WS _ VISIBLE | LBS _ STANDARD,

170,150,180,100,hwnd,(HMENU)IDC_LISTBOX,NULL,NULL);

创建组合框:

CreateWindow(“COMBOBOX “,NULL,WS _ CHILD | WS _ VISIBLE | WS _ VSCROLL | CBS _ SIMPLE,

500,10,190,150,hwnd,(HMENU)IDL_ComboBoxSpl,NULL,NULL);

这些控制创建的效果如下:

这些控件不是在MFC中创建的,而是手工制作的。怎么样?这不是很简单吗?赶紧试试吧。

其实所有的windows控件都是用这个函数创建的,只是不同控件的类不一样。更多控件可以查找MSDN。

如果你对编程感兴趣,想了解更多编程知识,解决编程问题,专家可以帮你解决最初的疑惑。我们这里有ja专家,C++/C专家,windows/Linux专家,android/ios专家。请关注我的微信微信官方账号:coder_online。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。

发表回复

登录后才能评论