win32 控件的使用】的更多相关文章

我们建立的项目都是基于对话框的win32项目,和主窗口一样对话框也是窗口的一种类型所以区别不是很大,所以我们再下面讲一下控件的使用(里面不要使用char,要开始使用WCHAR,他的很多函数都是wcs..) 一.获取对话框上控件的指针(句柄) GetDlgItem(对话框句柄,控件ID);返回的是对话框控件的句柄. 二.设置控件的文本 SetWindowText(空间指针,要更改的字符串); 三.…
1. 控件的创建 控件的创建和窗口创建是一样的,例如: ,,,, hWnd,(HMENU)IDB_BUTTON01,hInst,NULL); 是一个按钮的创建,其中hWnd是窗口句柄,hInst是应用程序句柄. 其他控件类似的可以把第一个参数"button"改为"edit","listbox","static","combobox"等等: 如果要创建的控件有很多,可以用一个循环和宏组合代替: #define…
来源:https://blog.csdn.net/dai_jing/article/details/8683487 手动创建syslink(msdn): CreateWindowEx(, WC_LINK, "For more information, <A HREF=\"http://www.microsoft.com\">click here</A> or <A ID=\"idInfo\">here</A>…
定义如下即可: #ifdef _M_IX86 #pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='x86' publicKeyToken='6595b64144ccf1df' language='*'\"") #elif _M_IA64 #…
原文:<Programming WPF>翻译 第3章 3.内嵌控件 WPF提供了一系列内嵌控件.其中大多数符合标准的你已经熟悉的Windows控件类型.注意到没有一个是包装在旧的Win32控件外面的控件.虽然它们看上去就像是它们的副本,它们都是与生俱来的WPF控件.这意味着它们为WPF在本书中描述的功能提供了完全的支持,包括样式.独立的分辨率.数据绑定.合成.以及充分的集成支持WPF的图形化能力. 3.3.1按钮 按钮是用户可以点击的控件.点击的结果由应有程序的开发者胜任,但是共同的期望依赖于…
关于CProgressCtrl 控件的基本操作网上有很多资料,可我想实现进度条中进度滚动效果,即很多时候程序出现的等待或启动画面,如下图: 实现这个效果的函数为SetMarquee(_In_ BOOL fMarqueeMode, _In_ int nInterval),第一个参数为开关,第二个参数指定滚动时间.且控件应该包含 PBS_MARQUEE风格,eg:m_ProgressCtl.Create(WS_CHILD|WS_VISIBLE|PBS_MARQUEE,CRect(100,200,25…
在Win32 SDK中创建一些控件的时候需要注意一下(具体是哪些控件请参看MSDN文档中列出来的) /* MSDN:Carries information used to load common control classes from the * dynamic-link library (DLL).This structure is used with the InitCommonControlsEx function. * 需要使用的结构体和函数 */ typedef struct tag…
在我们使用CreateWindow();像一般控件建Windows扩展控件的时候我们会发现控件没有创建成功 这是因为我们没有对Windows扩展控件库进行初始化,这要我们使用InitCommonControlsEx();函数来对 Windows扩展控件库进行初始化,代码如下: INITCOMMONCONTROLSEX InitCtrls; InitCtrls.dwSize = sizeof(INITCOMMONCONTROLSEX);InitCtrls.dwICC = ICC_PAGESCROL…
本课中,我们将学习如何使用树型视图控件.另外还要学习如何在树型视图中完成拖-拉动作,以及如何使用图象列表. 理论: 树型视图是一种特别的窗口,我们可以使用它一目了然地表示某种层次关系.譬如象在资源管理器中左边窗口中的就是树型视图.您可以调用CreateWindowEx来创建树型视图,传递一个类名“"SysTreeView32"”,或者您也可以把它放到一个对话框中去.不要忘了在您的代码中加入InitCommonControls函数. 树型视图有几种特有的风格.下面是几种经常使用的. TV…
这次我们将探讨控件,这些控件是我们程序主要的输入输出设备. 理论: WINDOWS 提供了几个预定义的窗口类以方便我们的使用.大多数时间内,我们把它们用在对话框中,所以我们一般就它们叫做子窗口控件.子窗口控件会自己处理消息,并在自己状态发生改变时通知父窗口.这样就大大地减轻了我们的编程工作,所以我们应尽可能地利用它们.本课中我们把这些控件放在窗口中以简化程序,但是大多数时间内子窗口控件都是放在对话框中的.我们示例中演示的子窗口控件包括:按钮.下拉菜单.检查框.单选按钮.编辑框等.使用子窗口控件时…
MSComm控件与Win32 API操作串口有何区别? [问题点数:50分,结帖人shell_shell]   收藏帖子 回复 我是一个小兵,在战场上拼命!   结帖率 83.33% 我以前用MSComm控件写了串口程序,感觉不是很好用.突然断电,重起就会出现问题.错误提示:port already open!     这次想用Win32 API操作串口,是不是比MSComm控件好用?    Win32 API操作232串口,边读边发数据,编程时需要注意什么吗? 请大虾们指教!! 手机新出的赚钱…
有时候我有在用Win32 API来向窗体上添加控件时,通过CreateWindow或CreateWindowEx创建出来的控件的风格不像XP风格,而是像Windows 2000的风格,界面很难看.注意,是动态调用CreateWindow来创建控件,不是从资源中加载. 这种情况下,我们怎么办呢,通常说来,造成这种情况都是由于没有正确加载资源,我们知道,像button, combobox, listbox等这些控件都是放在comctl32这个DLL里面的,所以有时候在用这些系统自定义的控件时,需要我…
windows给我们提供了一个对话框控件HotKey非常好用,在设置热键的时候用起来很爽,但是一直百度就是没找到在win32下怎样通过消息获取这个控件里面的内容,找到的都是用MFC封装好的控件类来操作的,终于在MSDN找到了答案… 翻译过来就是要给控件发送这个消息 HKM_GETHOTKEY  头文件:Commctrl.h // IDC_HOTKEY_SETTING 这个是热键控件的ID SendMessage(GetDlgItem(hDlg, IDC_HOTKEY_SETTING), HKM_…
今天,咱们还是接着玩“控件斗地主”,这是我原创的超级游戏,有益身心健康,玩一朝,十年少. 哦,对,脑细胞极速运动了一下,想起了一个问题,这个破问题虽然网上有很多种解决方案,但是,并没有让所有人都解决问题. 不知道大家有没有调用过LoadIconMetric函数,这个函数在静态库Comctl32.lib中有定义(当然,动态库也有),不过,创建项目的时候,默认并没有引用它的,于是,大家知道,解决调用的方法就是在代码中加上: #pragma comment(lib, "Comctl32.lib&quo…
1.标准控件 可以在win32窗口程序中添加资源脚本来给程序添加标准控件: 具体操作为:新建资源脚本    ->在.rc文件中添加控件    ->给控件绑定事件:   常用的标准控件:     Static    ->组框,用来将窗口分成多个块        Group Box         Button         Check Box         Radio Button         Edit         ComboBox         ListBox      …
首先是头文件,内容如下: #include <tchar.h> #include "..\CommonFiles\CmnHdr.h" #include <Windows.h> #include <WindowsX.h> #include <CommCtrl.h> #include "resource.h" #pragma comment (lib,"comctl32.lib") BOOL InitT…
过去几年,关于文本编辑框(Edit)控件的响应事件,我都是在主程序 while(GetMessage(&messages, NULL, 0, 0)) { ... } 捕获. 总感觉这种方式让人感觉不舒服. 今天想给一个 Edit 控件加一下按下[回车]的响应事件,我百度了一下,找到一篇文章:https://blog.csdn.net/gloria__zhang/article/details/7214121 原来只需要通过 LONG OldProc = SetWindowLong(hwnd_ed…
创建一个标签 CreateWindowEx(0, "static", "姓名:",                                            WS_CHILD | WS_VISIBLE | SS_NOTIFY,                                            12, // xpos                                            414, // ypos     …
列表视图控件是一种非常常用的控件,在需要以报表形式显示数据时,列表控件通常是最好的选择,许多专用的数据报表控件,也是在它的基础上派生而来.与树视图类似,列表控件可以由多个子项目组成,可以设置为Icon(大图标).SmallIcon(小图标).List(列表)或Report(报表). 一.列表视图控件有两个重要的数据结构LVCOLUMN和LVITEM.LVCOLUMN用于定义报表方式下的“列”的结构:LVITEM用于定义“项”的结构.这两个结构的定义及说明如下: typedef struct _L…
在最近的一篇文章中说到了,如何创建ActiveX,这次我们来响应事件.这次,我们将创建一个类:CGeneralEventSink,它能够响应任何Dispatch事件(事件的接口继承与IDispatch). 首先,我们来回顾一下ConnectionPoint的概念.任何支持事件的对象(比如,ActiveX控件),都支持IConnectionPointContainer接口,顾名思义就是一个IConnectionPoint的容器,包含了这个对象支持的全部事件.IConnectionPoint代表了一…
虽然这里一片的.net气氛,到处充斥着像MVC.WPF.WorkFlow.LINQ等各种niubility的术语.但我们使用的Windows还是由COM技术主宰着:我们在选择日常使用的软件时,也会避免使用.net开发的软件.即便是.net的桌面程序,也会经常使用ActiveX控件.这篇文章就让我们用最原始的方式来使用ActiveX,不使用任何MFC,ATL等框架,也不使用编译器提供的#import之类的指令,也不使用任何ide提供的向导. 像OLE.ActiveX等COM的术语,即便是微软也说不…
这个控件其实不用阿拉来介绍,因为它太常见了,就好像我们一出门就会看到妹子一样常见.当然也可以说,它是对ListBox的扩充. 在使用该控件之前,我先介绍VS的一个相当好玩的功能. 在代码文件的#include指令上右击,从弹出的菜单中选择“生成包含文件关系图”,如下图: 然后你喝一口咖啡,你会看到这样的东西: 这个关系图,演示了你的项目中的头文件,源文件以及外部引用文件之间的关系.把鼠标移到上面,滚动滑轮,可以缩放大小.把鼠标移到“外部”节点上,点击左边的向下箭头,可以看到本项目与外部头文件的关…
用户通过控件与应用程序交互,在吹牛之前,先介绍一个工具,这是官方的工具,使用它,你可以预览常用控件的外观.样式,以及对控进行操作时接收和发送哪些消息.下载地址如下: http://www.microsoft.com/en-us/download/details.aspx?id=4635 我们可以把控件当成特殊的一类窗口,所以,创建控件与创建窗口一样,使用CreateWindow或CreateWindowEx函数,不过,在窗口样式上面记得用上以下两位帅哥: a.WS_CHILD:控件是放在我们的窗…
#define WM_CTLCOLORMSGBOX 0x0132 #define WM_CTLCOLOREDIT 0x0133 //编辑控件Edit #define WM_CTLCOLORLISTBOX 0x0134 //列表控件ListBox #define WM_CTLCOLORBTN 0x0135 //按钮控件BottonBox #define WM_CTLCOLORDLG 0x0136 #define WM_CTLCOLORSCROLLBAR 0x0137 #define WM_CTLC…
今天出了个奇怪的问题,当我在主窗口上创建一个用模板对话框的子窗口时, 在子窗口上放的TreeCtrl控件不响应LVN_SELCHANGED消息,也是晕死了, 我以为是消息捕获的问题,我在主窗口上也捕获不到,子窗口上也捕获不到, 最后跑到全局消息循环中也捕获不到,就这样消失了,不知道去哪去了. 好奇怪哦. 最后在网上找了半天,就用TVN_ITEMCHENGED消息码就能捕获了,晕菜了, 好吧,就用这个消息也可以,就不纠结哪些问题了. 1.TVN_ITEMCHENGED消息在WM_NOTIFY消息中…
最近在开发中使用到了UpDown这个控件,但是因为之前没有使用过,所以很不熟悉,于是就编写了一个简单的demo来学习UpDown以及其结合TEdit的用法. 初步的常用功能的简介 目前(2015.08.07)只是涉及到其简单的用法,因为目前我所需要使用的就只有这些内容,系统化的使用和知识将会在以后需要的时候再补充. 目前涉及到的内容有UpDown组件与TEdit组件的配合使用.UpDown的Position属性. 寻找UpDown: 如下图,Win32下,用红色框框出来的 先看一下这个程序的运行…
这个方法是简单的也是神奇的. 有木有想过,将自己项目中的所有类型,包括自定义类型的命名空间和名称全部获取出来? 有木有想过,有一种简便的方法可以自动化管理项目中的控件和窗体? 有木有想过... 首先,要敢想.要敢尝试. 通过以下方法,进行简单变换,是可以做到本程序控制本项目的窗体和控件. 以下方法简单了,就不一一说明了,如果你觉得有用,全部复制了编译一下,看看就明白是怎么反射了. 当然懂得大大们看到我有不足之处,请不要谩骂了,我脸皮薄,被你们骂骂就泄气了,技术有限,请大大们不吝赐教. 基础方法…
在Win32 SDK环境下,怎么来创建常用的那些基本控件呢?我们知道如果用MFC,简单的拖放即可完成大多数控件的创建,但是我们既然是用Windows SDK API编程,当然是从根上解决这个问题,实际上MFC的下层也是通过这些API完成的. 实际上控件也是窗口,只不过是被微软预先创建好的一种窗口类,比如button就是一个类名为“BUTTON”的类.既然控件实际上是窗口,当然也是用CreateWindow或者CreateWindowEx这个函数来完成的,第二个函数除了多一个扩展风格之外,其他完全…
delphi 控件大全(确实很全)   delphi 控件查询:http://www.torry.net/ http://www.jrsoftware.org Tb97 最有名的工具条(ToolBar)控件库,仿Office97,如TDoCk97,TToolBar97,TEdit97,TToolWindow97等. http://www.fltvu.com/jiaocheng/chenxu1/delphi/vCl/index.htm http://www.delphiarea.com/produ…
废话不多说,直接上. 鉴于abap调研的dll文件需要在wins注册,自己尝试过delphi和C#感觉不是很好,最后毅然选择了VB来写 因为需要用到MScomm控件,所以对于将要写的dll需要带form的,貌似这样才能将控件加到dll中来. 步骤: 1,新建dll程序,添加一个窗体 2,在from_load中初始化com口参数 1 2 3 4 5 6 7 8 With MSComm1         .CommPort = 1  '设置Com1为通信端口         .Settings =…