稍微用脑子想了一下,图形控件没有句柄,因此先把自己的坐标改一改,然后只要把父控件的某些区域Invalidate一下就可以了,WM_PAINT消息一来,父控件就会重绘所有子图形控件,就达到了相应的效果.怪不得没看到调用SetWindowPos这样的函数.有空详细跟踪一下. 举例: procedure TForm1.Button1Click(Sender: TObject); begin image1.Left := image1.Left - 10; end;…
Delphi的重要属性,主要是Enable,  Visible, Color, left等等.这里分析left,因为TWinControl里有些覆盖函数的原因,虽然起点都是TControl.SetLeft()函数,但是图形控件和Win控件走的是不一样的路线.这里是测试TWinControl的left代码: procedure TForm1.Button1Click(Sender: TObject); begin panel1.Left:=panel1.Left-; end; 由于left是TCo…
摘自DoubleLi:   http://www.cnblogs.com/lidabo/archive/2012/08/24/2654678.html mfc控件位置调整和坐标确定 http://my.oschina.net/u/131904/blog/39804 在mfc工程中控件或者窗口位置的调整是经常遇到的,特别是基于对话框的工程.位置的调整包括坐标.长度和宽度的变化,一般在窗口类的OnSize函数中实现.控件位置的调整涉及的函数有:GetWindowRect().ScreenToClie…
scale拖拉改变值控件 使用户通过拖拽改变值 简单的实现: import tkinter wuya = tkinter.Tk() wuya.title("wuya") wuya.geometry("300x200+10+20") # 创建对象 scale1 = tkinter.Scale(wuya, from_=0, to=100) scale1.pack() # horizonta表示为水平放置,默认为竖直,竖直为vertical # length表示scale…
场景:点击TextBox后弹出Poppup 原理:使用EventTrigger后触发StoryBoard,通过StoryBoard改变其他控件的值. 参考代码: <Grid> <Grid.RowDefinitions> <RowDefinition/> <RowDefinition/> <RowDefinition/> </Grid.RowDefinitions> <TextBox x:Name="tb" G…
  将四个按钮放入一个父控件的好处:方便移动,只需要改变父控件的y值, 就可移动四个按钮               https://www.evernote.com/shard/s227/sh/78c6a4ee-16be-424b-a258-9294c585737b/1c29db6fab5aeeecea8a8a857dac3d7a…
需求是这样,有个程序界面我们需要通过自己的程序持续输入数据,界面如图. 可以获得控件的句柄而用钩子写入值.这里需要用到spy++工具.在VS的工具下有个spy++工具,打开如下图 通过这个工具可以获得窗体的句柄,当然这里获得的句柄只能用于测试,因为.net开发的程序窗体每次打开句柄都会变,都需要重新获得.这个工具的用处在于找一个控件的前一句柄控件和后一句柄控件. 一.引用 //寻找目标进程窗口 [DllImport("USER32.DLL")] public static extern…
现在要求在点击文本框时,获取文本框的坐标,需要相对文本框的位置来显示信息. 思路就是,绑定文本框的click 事件,一旦有点击就触发,去调用clickevent 函数执行计算. $('#txt_m').bind('click', clickevent); //计算控件的坐标 function clickevent(event){    var t,a;    a = document.getElementById(this.id);    t = a.offsetTop; l = a.offse…
总结的结果是: QMouseEvent中两类坐标系统,一类是窗口坐标,一类是显示器坐标.   总结一:经过试验,QMouseEvent::globalPos()  和 QCursor::pos()效果一样,但是Qt帮助文档说不一样,可是我获得值确实相同的. QCursor::pos() == QMouseEvent::globalPos() 都是全局坐标:   总结二:将button:posBtn直接转换成全局坐标. QMouseEvent::globalPos() ==  ui.posBtn-…
public partial class UCCheck : UserControl { [Browsable(true), Category("修改属性"), Description("控件标识,用来判断同类型的不同对象")] public string Identification { get; set; } private bool isStatus = false; /// <summary> /// 关门状态,true选中,false关 ///…
Button button = (Button) findViewById(R.id.button2);button.setOnClickListener(myOnClickListener); //手动增加代码开始private View.OnClickListener myOnClickListener = new View.OnClickListener() { public void onClick(View v) { Button pButton = (Button) findView…
改变所有的组件字体,使用AppearanceObject.DefaultFont属性:static void Main() {    DevExpress.Utils.AppearanceObject.DefaultFont = new Font("华文行楷", 10);    Application.Run(new frmMain());} 只改变GridView的字体: using DevExpress.Utils;using DevExpress.XtraGrid.Views.G…
procedure TForm1.SpeedButton1Click(Sender: TObject); var   Apoint:TPoint; begin   APoint:=TSpeedButton(Sender).ClientToScreen(Point(0,TSpeedButton(Sender).ClientHeight));   PopupMenu1.Popup(Apoint.X,Apoint.Y); end;…
用CWnd类的函数MoveWindow()或SetWindowPos()可以改变控件的大小和位置. void MoveWindow(int x,int y,int nWidth,int nHeight);void MoveWindow(LPCRECT lpRect); 第一种用法需给出控件新的坐标和宽度.高度:第二种用法给出存放位置的CRect对象:例: CWnd *pWnd; pWnd = GetDlgItem( IDC_EDIT1 ); //获取控件指针,IDC_EDIT1为控件ID号 pW…
[出处:blog.csdn.net/lanmanck] 一般变控件位置和大小在OnSize()消息中处理,不外乎几个函数: GetClientRect(),GetClientRect(),ScreenToClient(),MoveWindow().今天说下这几个函数用法. 假设有一个窗体,Dialog1,上面有一个Edit和一个Button,我们希望窗口大小改变时,Edit大小跟着变,最好铺满整个窗口,除了Button:而Button大小不变,但是位置要变. GetWindowRect() 得到…
例如有这样一个用户控件: <UserControl d:DesignHeight="100" d:DesignWidth="200" ...> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="100" /> <ColumnDefinition Width="100" /> </Grid.Colum…
用CWnd类的函数MoveWindow()或SetWindowPos()可以改变控件的大小和位置. void MoveWindow(int x,int y,int nWidth,int nHeight);void MoveWindow(LPCRECT lpRect);第一种用法需给出控件新的坐标和宽度.高度:第二种用法给出存放位置的CRect对象:例: CWnd *pWnd; pWnd = GetDlgItem( IDC_EDIT1 ); //获取控件指针,IDC_EDIT1为控件ID号 pWn…
用CWnd类的函数MoveWindow()或SetWindowPos()能够改变控件的大小和位置. void MoveWindow(int x,int y,int nWidth,int nHeight); void MoveWindow(LPCRECT lpRect); 第一种使用方法需给出控件新的坐标和宽度.高度. 另外一种使用方法给出存放位置的CRect对象. 例: CWnd *pWnd; pWnd = GetDlgItem( IDC_EDIT1 );    //获取控件指针.IDC_EDI…
在用VS的窗体设计器时,我们可以发现控件都是可以拖动的,并且还可以调整大小.怎么在自己的程序中可以使用上述功能呢? 下面的方法值得借鉴! using System; using System.Windows.Forms; using System.Drawing; namespace ControlSizeChangeEx { /// <summary> /// This class implements sizing and moving functions for /// runtime…
在用VS的窗体设计器时,我们可以发现控件都是可以拖动的,并且还可以调整大小.怎么在自己的程序中可以使用上述功能呢? 下面的方法值得借鉴! using System; using System.Windows.Forms; using System.Drawing; namespace ControlSizeChangeEx { /// <summary> /// This class implements sizing and moving functions for /// runtime…
FR提供一些选择器,可以改变部分控件的样式,那么对于如何书写自己的css: 可以自己写css文件导入,也可以在页面加载结束事件中添加JS方法来改变css样式. 以文本框为例: 书写css文件,保存至%FR_HOME%/下面(必须存放在WebReport这个目录下,,其他地方不能读取): .fr-texteditor{ border:3px solid blue; color:red; font-weight:bold;} 然后在模板web属性中添加css文件.. 在加载结束事件中添加js,以在填…
左右滑动的控件我们使用的也是非常多了,但是基本上都是使用的viewpager 等 android基础的控件,那么我们有么有考虑过查看他的源码进行定制呢?当然,如果你自我感觉非常好的话可以自己定制一个,osc的ScrollLayout就是自己定义的View 和Viewpager的区别还是不小的 代码不是很多不到300行,但是却实现了左右滑动页面的效果,还是值得学习的.效果如下: 我们看到ScrollLayout直接继承了ViewGroup然后自定义了一系列功能,那么接下来就分析一下: 我们知道Vi…
103.GridControl中添加Button RunDesigner,添加一列,设置对应字段FiledName,ColumnEdit选择ButtonEdit,此时默认风格像下拉框,需调整属性: 在In-placeEditor中,选择该控件,设置TextEditStyle为HideTextEditor 设置按钮上的预设图标:Buttons-Kind属性将默认的Ellipsis(省略号)设为Glyph(空白),同时将Caption设为需要显示的文字 此时按钮轮廓不明显,将appearance的B…
MFC 设计界面程序总是不够智能,没有这样,没有那样. 今天为了加强mfc功能,设计了一个自动布局的类,使用非常简单. 原理: 每个控件都有一个矩形区域,矩形区域就是控件在对话框中的显示位置和大小, 通过矩形的四个顶点,控制控件的布局, 在mfc中OnSize()函数在对话框大小变化时被调用,所有每次对话框大小变化时, 我们重新计算对控件的矩形坐标,然后移动到新的坐标,实现控件自动布局. 效果: 1.原始界面: 2.改变对话框大小后界面: 接口: /** * @brief Init the re…
以下内容为原创,欢迎转载,转载请注明 来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/4172483.html 需求:自定义一个ViewGroup,实现可以下拉刷新的功能.下拉一定距离后(下拉时显示的界面可以自定义任何复杂的界面)释放手指可以回调刷新的功能,用户处理完刷新的内容后,可以调用方法onCompleteRefresh()通知刷新完毕,然后回归正常状态.效果如下:     源代码:RefreshableView(https://github…
13.4 QuickCharts图表控件库解析     QuickCharts图表控件是Amcharts公司提供的一个开源的图表控件库,这个控件库支持WPF.Silverlight.和Windows等平台,源代码可以从Github网站上下载到(https://github.com/ailon/amCharts-Quick-Charts).目前从Github上下载到的QuickCharts图表控件的源代码并不能直接在Windows 10上使用,但是由于都是基于XAML来创建的,所以很方便进行移植到…
我们先来设置 UI Root 中的如下:屏幕大小为1024*768 2.1  新建一个Label 控件 先来看看Control Properties (基本上是所有控件都共用的)的以后不再介绍,参数: 其中要设置好Layout 和 Anchor 我们就要完全的理解一些坐标上的问题. Transform.Position和Layout.Position的关系.是同时改变的. Transform.Position是世界坐标系的单位是米,xy为(0,0)时正好面对着屏幕的中心点Left,Top(512…
1.frame(修改位置和尺寸):以父控件左上角为坐标原点,在其父控件中的位置和尺寸. //frame属性中的坐标点不能直接修改 CGRect tempFrame = self.v.frame; // 1.取出原来的属性 tempFrame.origin.y+=;//2.坐标点y加10 相当于向下移动10 self.v.frame=tempFrame;//3.赋值 2.bounds(修改尺寸):以自己左上角为坐标原点(x=0,y=0),控件的位置和尺寸. //因为其始终以自身左上角为坐标原点,所…
procedure TForm1.Button3Click(Sender: TObject);begin if (csOpaque in ControlStyle) then ShowMessage('不透明') else ShowMessage('透明') // Form透明end; procedure TForm1.Button3Click(Sender: TObject);begin if (csOpaque in Panel1.ControlStyle) then ShowMessage…
CSharpGL(45)自制控件的思路 +BIT祝威+悄悄在此留下版了个权的信息说: 本文介绍CSharpGL实现自制控件的方法. 所谓自制控件,就是用纯OpenGL模仿WinForm里的Button.Label.TextBox.CheckBox等控件,支持布局.修改大小和文字等功能. 如上图所示,左下角就是一个显示二维图片的类似PictureBox的控件,我称之为CtrlImage.(所有的CSharpGL自制控件类型,都继承自GLControl,都添加前缀Ctrl)CtrlImage上方分别…