GUI 剖析之 控件篇1)按钮控件
下面来介绍控件,这些是界面编程的重点:
从最简单也是最普遍使用的按钮控件讲起:
按钮控件(button):
实现1:利用对话框编辑器拖放按钮:
Vs或者vc的对话框编辑器可以实现所有你想要的控件,只要拖放就可以显示。
在拖放成功后(按钮样式可以在属性里设置),编译器会为按钮分配一个ID用于标识,你也可以更改ID名称,然后执行以下动作响应用户点击(假设按钮ID为ID_MYBUTTON):
WM_COMMAND://命令消息
{
switch(LOWORD(wParam):
{
case ID_MYBUTTON:
{
//在这里执行你想要的一切动作
}
}
}
实现2:代码实现按钮控件
struct
{
int iStyle ;
TCHAR * szText ;
}
button[] =
{
BS_PUSHBUTTON, TEXT ("载入图片"),
BS_PUSHBUTTON, TEXT ("载入图形"),
};
#define NUM (sizeof button / sizeof button[0])
static HWND hwndButton[NUM]
static int cxChar, cyChar ;
cxChar = LOWORD (GetDialogBaseUnits ()) ;
cyChar = HIWORD (GetDialogBaseUnits ()) ;
上面的LOWORD 和HIWORD 都是宏,分别代表低字段和高字段,因为GetDialogBaseUnits 返回的是一个32位的含有对话基本单位的值。返回值的低位字含有水平对话框基本单位,且高位字含有垂直对话框基本单位。以上代码是获取字体的横/纵坐标:返回值是一个8位16进制数,高4位存放字体的高度,低4位存放字体的宽度
for (int j = 0 ; j < NUM ; j++)
{
hwndButton[j] =CreateWindow ( TEXT("button"),button[j].szText,
WS_CHILD | WS_VISIBLE | button[j].iStyle,
cxChar*(15*j), cyChar-15,
15* cxChar, 7*cyChar/4,
hWnd, (HMENU) j,
((LPCREATESTRUCT) lParam)->hInstance, NULL) ;
}
for (int j = 0 ; j < NUM ; j++)
{
ShowWindow(hwndButton[j],TRUE);
}
GUI 剖析之 控件篇1)按钮控件相关推荐
- 一起撸个朋友圈吧(step5) - 控件篇【评论控件优化】
项目地址:github.com/razerdp/Fri- 上篇链接:http://www.jianshu.com/p/4cc3f9c8a713 下篇链接:http://www.jianshu.com/ ...
- 基于VS2017的工程用途按钮控件,开关按钮控件,图形按钮控件
分享一个基于VS2017的工控按钮DLL,以方便开发工控软件的朋友做出漂亮的界面. 控件属性可以选择按钮的形状(style1–style6),以及开关状态的显示文字(onlable或者offlabel ...
- C#窗体控件-按钮控件Button
按钮(Button)控件几乎存在于所有Windows对话框中,是Windows应用程序中最常用的控件之一.按钮控件允许用户通过单击来执行操作.按钮最重要的事件,也是最常用的事件就是Click.当用户单 ...
- QT上设置背景图不影响子控件以及按钮控件的透明化
QT中设置背景图不影响子控件 QT中设置背景图的方法不少,我这里是直接使用stylesheet来设置背景图.如果直接在UI界面进行如下所示设置 border-image: url(:/resource ...
- qt建立一个按钮控件
1.如果建立一个按钮控件 2.指定按钮控件的父对象 3.指定按钮控件的位置 4.设置按钮控件的大小 1.如果建立一个空间按钮 在头文件加上:#include<QPushButton>.(记 ...
- qt 关闭窗口的槽函数_勇哥的VC++应用框架学习之QT(1) 信号槽、按钮控件、opencv读取显示图片...
前言勇哥对于C语言,C++早些年有一些接触,这个系列贴子就记载一下C++应用框架的学习经验. 在写程序时,UI.基础类库.应用程序框架对于vc来讲,只能依靠MFC和QT了. 勇哥对MFC有很强的抵触, ...
- Unity编辑器扩展 UI控件篇
前摇 :认识编辑器扩展的必要性 由于各种各样的原因,无论是移动端亦或是主机/PC端,进几年的发行的游戏体量是越来越大.通常来说大体量的游戏开发需要一套很成熟完善的工作流,亦或说有很强的工业化的能力,像 ...
- 【DND图形库】五、按钮控件与音效
五.按钮控件与音效 (甲)按钮控件 在DND.h里能看到有哪些控件,基本上都以静态工厂模式创建: ///GUI/// #include "DNDGUI.h" //GUI 控件基类 ...
- qpython3可视图形界面_python GUI库图形界面开发之PyQt5窗口控件QWidget详细使用方法...
QWidget基本介绍 基础窗口控件QWidget类是所有用户界面对象的基类,所有的窗口或者控件都直接或者间接的继承自QWidget类. 窗口坐标系统 PyQt使用统一的坐标系统来定位窗口控件的位置和 ...
最新文章
- Oracle 共享磁盘阵列 双机热备 实战 配置教程 配置手册
- Arduino 控制舵机
- linux系统时区设置
- 2017年10月18日普及组 文件名排序
- boost::synchronized_value相关的测试程序
- win2008一键配置php mysql_Windows 2008一键安装包配置环境:Windows+IIS+Php+Mysql
- java parseint()
- 互联网日报 | 1月18日 星期一 | 北京超10万滴滴司机预约接种疫苗;李子柒入驻饿了么;蔚来计划2021年在海外实现销售...
- ado jet 反复连接 未指定的错误_为什么驱动器的PE端要和变压器中性点有可靠连接?...
- matlab 曲线拟合--视频编码中PSNR计算及码率计算
- linux下已修改但尚未保存_linux下查看和修改文件时间
- TopJui 我踩的那些坑
- 运筹学_化标准型_week2
- 机动车车牌分类及命名规则总结
- 百度AI开放平台—简单步骤介绍(多图警告)
- 用Java输出高频词_编程高阶用法--开发者高频词汇
- Java 埃拉托色尼筛选法
- 为何一个简单的测试类H5却要花费我2天时间才完成?
- 京东研发团队 - 领域驱动设计(DDD)实践
- QQ邮箱添加企业邮箱与企业邮箱添加QQ邮箱