delphi如何按照控件的左右顺序来遍历窗体中的每个控件 [问题点数:20 http://bbs.csdn.net/topics/380216822
|
#1 得分:10回复于: 2012-03-11 13:42:18
没有的,
Delphi/Pascal code
、 |
|||
|
#2 得分:0回复于: 2012-03-11 13:43:37
object Edit1: TEdit
Left = 336 Top = 128 Width = 121 Height = 21 TabOrder = 2 Text = 'Edit1' end 第一个应该是object Edit1: TEdit,看错了下 |
|
|
#3 得分:0回复于: 2012-03-11 13:47:43
那controls[0]呢?
Components[0]和controls[0]有啥区别 我又如何才能改变这个次序,望指教. |
|
#4 得分:0回复于: 2012-03-11 13:48:01
好东西啊
|
|
#5 得分:0回复于: 2012-03-11 13:49:05
case5166
对就是这位仁兄的说法 |
|
#6 得分:0回复于: 2012-03-11 14:36:54
那如何实现对panel上的所控件进行位置排序,比如panel上有三个控件,添加进panel中的顺序分别是btn1,btn2,btn3,left小的排在左边,(btn2.left>btn3.left>btn1.left,排列的顺序就为btn1,btn3,btn2)
这种如体实现?? |
|
#7 得分:0回复于: 2012-03-11 15:19:04
可以用Panel.Components[0]来取得控件,然后判断是否是Button,如:
if Panel.Component[i] is TButton then |
|
#8 得分:0回复于: 2012-03-11 15:44:18
引用 6 楼 mashengxuucom 的回复:
Delphi/Pascal code
存细观察下可以发现DELPHI的添加次序还是很有规律的 (Components[i] as TControl).Left := (Components[i+1] as TControl).Left+10;这类代码来调整 |
|||
|
#9 得分:0回复于: 2012-03-11 15:48:37
引用 3 楼 mashengxuucom 的回复:
参考http://www.cnblogs.com/del/archive/2008/10/23/1317862.html |
|
|
#10 得分:0回复于: 2012-03-15 13:27:41
class procedure myformUtil.AdjustToolBar(aContainer: TWinControl;
bIsVert: Boolean; iSpace, iInitPosition: Integer); var col: TControl; ls: TStringList; i: Integer; begin if iSpace < 0 then iSpace := 4; if iInitPosition < 0 then iInitPosition := 10; aContainer.Controls[0].Left := iInitPosition; 看看我这段代码,实现控件自动排序的,如何实现控件按原来的位置从左到右依次排序呢? |
|
#11 得分:0回复于: 2012-03-15 13:35:48
可以设置tag来实现,然后findcomponent
|
|
|
#12 得分:10回复于: 2012-03-23 22:08:03
如果窗体上的控件都是 TWinControl继承下来的 下面的代码对你可能有帮助
var P:TPoint; P := self.ClientToScreen(Point(x,y)); wnd := WindowFromPoint(p);// end; end; |
|
|
#13 得分:0回复于: 2012-03-23 22:11:03
以上代码对TLabel,TImage无效 对TPanel,TEdit有效
对无效的TLabel,TImage等放在TPanel容器里面,上面的代码就可以用了 |
delphi如何按照控件的左右顺序来遍历窗体中的每个控件 [问题点数:20 http://bbs.csdn.net/topics/380216822的更多相关文章
- 关于WinForm引用WPF窗体---在Winform窗体中使用WPF控件
项目中有个界面展示用WPF实现起来比较简单,并且能提供更酷炫的效果,但是在WinForm中使用WPF窗体出现了问题,在网上找了一下有些人说Winform不能引用WPF的窗体,我就很纳闷,Win32都能 ...
- 【机房系统知识小结点系列】之遍历窗体中的控件,判断Text是否为空?
做机房系统时,几乎每个窗体中都会用到判断界面中的控件是否为空的情景.我们曾经是这样走来的: 第一版: 好处:对窗体界面中的Text等控件,逐一做判断,当用户输入某一项为空的时候,会议弹出框的形式,告诉 ...
- (转)C# WinForm中 获得当前鼠标所在控件 或 将窗体中鼠标所在控件名显示在窗体标题上
原文地址:http://www.cnblogs.com/08shiyan/archive/2011/04/14/2015758.html /********************** * 课题:将窗 ...
- winfrom窗体中嵌套WPF控件
前言 本文主要介绍如何在winfrom窗体中嵌套WPF控件, 一来是自己记录一下,而来希望能对有需要的朋友提供实现思路. 如有错误请指出...下面进入正题... -1.前期准备 准备一个建立好的win ...
- 在Winform窗体中使用WPF控件(附源码)
原文:在Winform窗体中使用WPF控件(附源码) 今天是礼拜6,下雨,没有外出,闲暇就写一篇博文讲下如何在Winform中使用WPF控件.原有是我在百度上搜索相关信息无果,遂干脆动手自己实现. W ...
- Winform中怎样在工具类中对窗体中多个控件进行操作(赋值)
场景 需求是在窗体加载完成后掉用工具类的方法,工具类中获取窗体的多个控件对象进行赋值. 注: 博客主页: https://blog.csdn.net/badao_liumang_qizhi 关注公众号 ...
- !!无须定义配置文件中的每个变量的读写操作,以下代码遍历界面中各个c#控件,自动记录其文本,作为配置文件保存
namespace PluginLib{ /// <summary> /// 遍历控件所有子控件并初始化或保存其值 /// </summary> pub ...
- CRM窗体中只读的控件不会引发Update事件
在CRM的窗体设计时,如果把某一个控件设为只读了,仅管你在后台用代码修改了值,这个值也不会起任何作用,更不会提交到后台,触发Update事件!
- 【C#】在窗体中水平居中的控件,到了XP下不居中的解决办法
我时不时会遭遇这个操蛋问题,今天得闲研究了一下,解决如下: A.将窗体FormBorderStyle属性改为Fixed系,当然这会导致用户不能拖拉窗口大小,所以你可能需要B计划↓ B.确保在[VS]中 ...
随机推荐
- 前端开发HTML&css入门——CSS&选择器练习
CSS 层叠样式表 (Cascading Style Sheets)css可以用来为网页创建样式表,通过样式表可以对网页进行装饰.所谓层叠,可以将整个网页想象成是一层一层的结构,层次高的将会覆盖层次低 ...
- 以当前时间作为GUID的方法
在C#中,系统提供了GUID类,用户可以通过该类来获得128位的唯一标识,但是该标识不具有可读性,很难把该GUID显示在界面上,以当前时间精确到毫秒来作为GUID是一个比较不错的做法,但是DateTi ...
- Qt项目界面文件(.ui)及其作用(超详细)
http://c.biancheng.net/view/1820.html Qt 项目中,后缀为“.ui”的文件是可视化设计的窗体的定义文件,如 widget.ui.双击项目文件目录树中的文件 wid ...
- 负载均衡的3种模型(httpd+lvs几十万并发的负载均衡搭建)
一.几种常见的负载均衡模型 二.搭建httpd+lvs LVS .node01 启动一块eth0:2的网卡子接口(ifconfig eth0: down可以把网卡down掉) ifconfig eth ...
- moc_XXXX.o:(.data.rel.ro._ZTI12CalculatorUI[_ZTI12CalculatorUI]+0x10): undefined reference to `typeinfo for QWidget' collect2: error: ld returned 1 exit status make: *** [Makefile:144: myCalculator]
main.cpp:(.text.startup+0x22): undefined reference to `QApplication::QApplication(int&, char**, ...
- 创建kudu数据集测试总结
参考文档: https://cloud.tencent.com/developer/article/1474797 https://www.tgshenghe.com/a77nr1/nzt9t1.ht ...
- larval 使用redis做缓存
1.存redis 使用setex命令可以同时设置数据和保存时间 $data = [ 'name'=>zhangsan, 'age' => 28, 'sex' => 1 ]; Redi ...
- linux ab 压测
https://www.cnblogs.com/shenshangzz/p/8340640.html https://www.cnblogs.com/shenshangzz/p/8340640.htm ...
- Spring Boot整合Mybatis出现错误java.lang.IllegalStateException: Cannot load driver class:com.mysql.cj.jdbc.Driver
错误描述: Caused by: java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver ...
- 自学semantic UI个人博客首页模板
以下是代码 <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <m ...

