http://download.csdn.net/detail/wenzhou1219/6783959…
之前有学MFC的同学告诉我觉得Windows的控件重绘难以理解,就算重绘成功了还是有些地方不明白,我觉得可能很多人都有这样的问题,在这里我从Windows窗体的最基本原理来讲解,如果你有类似的疑惑希望这篇文章可以帮你解惑. 1.Windows窗体原理 首先,如果看过Win32 SDK编程的都知道Windows的三大核心系统:负责窗口对象产生和消息分发的USER模块,负责图像显示绘制的GDI模块,负责内存.进程.IO管理的KERNEL模块.试想象一下如何在一个像素阵列上产生窗口对象,其实就是使用G…
什么是Wind ows窗体? 顾名思义,win dows窗体就是将一些所必须的信息通过窗体的形式展示给客户看.例如:我们经常玩的QQ登陆界面,微信登陆界面,等等,都是以窗体的形式将信息展示给我们看的. 我们要怎样创建Window s窗体呢?1) 打开Visual Studio 开发工具2) 选择文件--?新建--?项目命令.3) 项目类型选择 "Visu al C# "4) 模板选择" Windo ws窗体应用程序" 这就是窗体应用程序运行的主程序入口 首先我们可以…
将下面的代码拷贝到一个单元中,创建一个包,加入这个单元后安装.使用的时候设置好背景颜色,边框颜色,图标(png格式)相对路径的文件名称.这个控件可以利用PNG图像的颜色透明特性,背景色默认透明度为50%,可以将按钮后面的内容显示出来.GDIPAPI, GDIPOBJ, GDIPUTIL三个单元可用万一的博客上寻找下载地址. unit u360StyleButton;  interface    uses    SysUtils, Classes, Controls, StdCtrls,Graph…
原文:WPF中不规则窗体与WebBrowser控件的兼容问题解决办法 引言 这几天受委托开发一个网络电视项目,要求初步先使用内嵌网页形式实现视频播放和选单,以后再考虑将网页中的所有功能整合进桌面程序. 播放器普遍都要有个看起来比较酷的外观,于是我就给设计了个不规则形状的带透明边框的外观,如下图: 但这个设计整合到WPF中时,却遇到了一个头疼的BUG: 只要设置窗体为AllowsTransparency="True" WindowStyle="None",内嵌的Web…
13.4 QuickCharts图表控件库解析     QuickCharts图表控件是Amcharts公司提供的一个开源的图表控件库,这个控件库支持WPF.Silverlight.和Windows等平台,源代码可以从Github网站上下载到(https://github.com/ailon/amCharts-Quick-Charts).目前从Github上下载到的QuickCharts图表控件的源代码并不能直接在Windows 10上使用,但是由于都是基于XAML来创建的,所以很方便进行移植到…
首先先得瑟一下,有关WPF中不规则窗体与WindowsFormsHost控件不兼容的问题,网上给出的解决方案不能满足所有的情况,是有特定条件的,比如  WPF中不规则窗体与WebBrowser控件的兼容问题解决办法.该网友的解决办法也是别出心裁的,为什么这样说呢,你下载了他的程序认真读一下就便知道,他的webBrowser控件的是单独放在一个Form中,让这个Form与WPF中的一个Bord控件进行关联,进行同步移动,但是在移动的时候会出现闪烁,并且还会出现运动的白点,用户体验肯定不好. OK,…
做机房系统时,几乎每个窗体中都会用到判断界面中的控件是否为空的情景.我们曾经是这样走来的: 第一版: 好处:对窗体界面中的Text等控件,逐一做判断,当用户输入某一项为空的时候,会议弹出框的形式,告诉用户,具体是哪一个控件,输入有误. 坏处:首先,界面看起来就很繁琐:其次,浪费了大量的手工工作,代码不具有可复用性:再次,编码的时候,如果控件数目比较多的话,容易忘记其中的某些控件. If (Trim(txtCardID.Text) = "" then'判断卡号是否为空 If Trim(t…
OCX 是对象类别扩充组件(Object Linking and Embedding (OLE) Control Extension):是可执行的文件的一种,但不可直接被执行: 是 ocx 控件的扩展名,与 .exe..dll 同属于PE文件. 同一个OCX的多个控件在同一窗体上会出现可能的问题,主要原因是不能有全局变量(或共享数据) ,应该尽量定义成类的成员变量, 全局变量在同一个进程中要被共享的. windows下注册ocx控件,有两种方法  方法一: 1,对于32位系统将xxx.ocx拷贝…
目录 一.QCP 二.效果展示 三.高DPI适配 1.自定义柱状图 2.新的柱状图 3.测试代码 四.相关文章 原文链接:Windows高DPI系列控件(二) - 柱状图 一.QCP QCP全称QCustomPlot,是一个基于Qt的图表库,同时支持Qt4和Qt5,使用起来还是很方便的,不管是编译成dll还是直接嵌入到我们自己的程序都是极其容易,毕竟只有两个文件.之前写过几篇简单的关于QCP的文章,从使用的角度分析了QCP的一些简单用法,包括:QCustomplot使用分享(一) 能做什么事.Q…
4.18 分屏控件(SplitView) 分屏控件(SplitView)是Windows 10新增的控件类型,也是Windows 10通用应用程序主推的交互控件,通常和一个汉堡按钮搭配作为一种抽屉式菜单来进行呈现.控件的XAML语法如下: <SplitView> <SplitView.Pane > ……菜单面板的内容 </SplitView.Pane > ……主体内容 </SplitView> SplitView控件主要由两部分组成,一部分是菜单的面板,另一…
 排列窗体上的控件(Laying Out Widgets on a Form) 中英文对照:form(窗体),layout(布局或者排列,意思是进行窗体上控件的排列的过程,如大小位置等) absolute positioning(绝对位置定位),manual layout(手工布局), layout managers(布局管理器) Qt中有三种方式对窗体上的控件进行布局管理:绝对位置定位(absolute positioning),手工布局(manual layout),布局管理器(layout…
老李推荐:第14章9节<MonkeyRunner源码剖析> HierarchyViewer实现原理-遍历控件树查找控件   poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程感兴趣,请大家咨询qq:908821478,咨询电话010-84505200. 到了现在,万事已经俱备,控件树这个东风也已经就绪了,我们也终于可以火烧赤壁大展拳脚,通过控件的ID在控件树中找到我们想要的控件了. HierarchyViewer只允…
老李推荐:第14章1节<MonkeyRunner源码剖析> HierarchyViewer实现原理-面向控件编程VS面向坐标编程   poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程感兴趣,请大家咨询qq:908821478,咨询电话010-84505200. 到此为止我们描述的MonkeyRunner对应用的点击拖放等操作都是直接通过指定坐标点来实现的,比如下面触摸一个坐标点为(60,90)的按钮的脚本例子: 1…
C# 向程序新建的窗体中添加控件,控件需要先实例化,然后用controls.add添加到新的窗体中去 Form settingForm = new Form(); setForm deviceSet = new setForm(); settingForm.Controls.Add(deviceSet); settingForm.Show();…
编码前 学习Windows phone自定义用户控件,在<WPF编程宝典>学习的小例子.并根据windows phone稍微的不同,做了点修改.ColorPicker(颜色拾取器):拥有三个Slider代表颜色中的RGB的值,可以进行调节各自的值.还有一个显示颜色的区域,它的值可以设置,也可以随着三个Slider值得变化而变化.其中每个Slider值也要根据颜色区域而变化.还要提供一个能由外部看到的可注册事件. 依赖属性: 设置四个依赖属性:分别为ColorProperty,RedProper…
在上几节的描写叙述中,我们把HierarchyViewer初始化好.也把ViewServer给装备好了.那如今距离获得一个控件去操作它是万事具备仅仅欠东风了,欠了那一股春风了?欠了的是建立控件树这个东风.由于HierarchyViewer依据ID去获取一个控件之前是须要先建立好控件树.然后从该控件树上依据ID去查找到目标控件的. 那么这一小节我们就先去看下HierarchyViewer是怎样去ViewServer获取控件列表,然后怎样把每一个控件的信息解析出来,最后组成一个由根控件開始的一颗控件…
System.Windows.Controls.Button   button控件一.button控件的各种样式的展示可以通过 …… 来给控件定义公共的样式调用样式的方法:在Button控件上添加样式的属性 Style="{StaticResource ButtonStyle1}" Margin属性定义了Button控件的相对整体界面的于左上右下的距离.Height控件的高度Width控件的宽度Content控件显示的内容Click单击触发的事件HorizontalAlignment水…
出自http://my.oschina.net/ypimgt/blog/60951 优点:    1.Dialog 窗体完全透明.     2. 窗体上的控件不透明. DC 绘制的图形不透明.     3. 拖动窗体上用 DC 绘制的图形可以移动窗体. 缺点:     1. 窗体设置透明使用是掩码颜色,所以在窗体上用 DC 绘图的过程当中如果采用了和透明掩码颜色相同的颜色将不会显示出来.     2. 如果将 Border 属性设置成了 NONE ,那么想通过响应 WM_NCHITEST 消息来…
如何在CRichEditCtrl控件中直接读如RTF格式的文件   Inserting an RTF string using StreamIn   --------------------------------------------------------------------------------   When inserting Rich Text Formatted text into the control there are two approaches you can ta…
使用input:file控件在微信内置浏览器上传文件返回未显示选择的文件 原来的写法: <input type="file" accept="image/x-png,image/jpeg" /> 改成: <input type="file" accept="image/*" /> 解决!…
一.窗体的事件 每一个窗体都有一个事件,这个窗体加载完成之后执行哪一段代码 位置:(1)右键属性→事件→load 双击进入.(2)双击窗体任意一个位置进入 public partial class Form1 : Form//构造方法 { public Form1() { InitializeComponent(); } 控件在工具箱里面找,找到之后双击即可添加进来,也可以点住拖进来 每个工具,控件,窗体都有一个name,相当于id,用来标识该对象的名称,name值不允许重复 六大常用控件 1.…
//当有多个窗体时,对顶层的窗口进行操作,例如:我们开发具有录入功能的界面的时候,为了防止提交后的二次(重复)录入,希望点击提交按钮并提示成功后,界面的所有文本框内容能够自动清空.NET Framework 类库 Form.ActiveMdiChild 属性 获取当前活动的多文档界面 (MDI) 子窗口. 命名空间:System.Windows.Forms 程序集:System.Windows.Forms(在 system.windows.forms.dll 中) 语法:public Form…
例如对windows发消息让文本选中. SendMessage(Text1.hwnd,EM_GETSEL,0,-1 ); EC_LEFTMARGIN(&H1) EC_USEFONTINF //设置左边距时使用EC_RIGHTMARGIN EC_USEFONTINF //设置右边距时使用EC_USEFONTINF,O//边距 设置编辑控件的左.右边距,当wParam含EC_LEFTMARGIN时在lParam的低16位指定左边距点数,当wParam含EC_RIGHTMARGIN时在lParam的高…
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) ListBox1: TListBox; Button1: TButton; Button2: TButton; Edit1: TEdit; procedure Button1Click(Sender: T…
一.背景 一年前有学习过C#,但没有在项目中去实际做APP,重新捡起来应用到项目中.我同事本来做好一个CANOPEN设备管理的界面,由于近期搜索了别人的开发的界面,我觉得有很多东西要重新安排,以及我已经实现封装CANOPEN协议成可调用的函数库,可以边调试边写实现功能会更实际一点,目前我已经规划好界面大体的方向,所以决定重新写好这个CANOPEN设备管理的界面.由于有好多的不懂,还是一步一步来,从最基本的开始.下面是今天使用到的控件. 二.菜单控件 我要实现如下图所示把窗体上增加菜单栏,菜单下可…
多窗体 Show Form1 f1 = new Form1(); f1.Show(); ShowDialog--在父窗体之上 Form1 f1 = new Form1(); f1.ShowDialog(); 2者具体区别如下:  1.在调用Form.Show方法后,Show方法后面的代码会立即执行  2.在调用Form.ShowDialog方法后,直到关闭对话框后,才执行此方法后面的代码  3.当窗体显示为模式窗体时,单击“关闭”按钮会隐藏窗体,并将DialogResult属性设置为Dialog…
在Win32 SDK环境下,怎么来创建常用的那些基本控件呢?我们知道如果用MFC,简单的拖放即可完成大多数控件的创建,但是我们既然是用Windows SDK API编程,当然是从根上解决这个问题,实际上MFC的下层也是通过这些API完成的. 实际上控件也是窗口,只不过是被微软预先创建好的一种窗口类,比如button就是一个类名为“BUTTON”的类.既然控件实际上是窗口,当然也是用CreateWindow或者CreateWindowEx这个函数来完成的,第二个函数除了多一个扩展风格之外,其他完全…
控件模版的概念 Windows Phone中每一个控件都有一个默认的模版,用于描述控件的内部组成结构和外观样式 相对于原本的样式外观操作,自定义模版的可自定义性更强 最基本的重写控件模版 <Grid> <!--Button按钮居中对齐--> <Button HorizontalAlignment="Center"> <!--原生控件模版设置的就是Template属性--> <Button.Template> <!--控件…