说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

控件使用技巧-Delphi资料

HTML文档下载 WORD文档下载 PDF文档下载
控件使用技巧-Delphi资料

在Delphi中实现类似VB中的控件数组。

你可以通过设置一组相应控件的TAG属性来实现这一功能。首先在窗体中放置3个BUTTON控件,然后分别设置这三个控件的TAG属性为1、2、3。接下来双击任意一个按钮,

在其代码部分输入如下代码:

procedureTForm1.Button1Click(Sender:TObject);

varcap:string;

begin

caseTButton(sender).Tagof

1:ShowMessage(′1stButtonPressed′);

2:ShowMessage(′2ndButtonPressed′);

3:ShowMessage(′3rdButtonPressed′);

end;

end;

最后在其他两个按钮的ONCLICK事件中选择已经编好的代码。这样一来就可以实现以上功能了。

在Delphi中实现不同风格的SPEEDBUTTON。

在许多常用的软件(如WORD)中经常会遇到这样的快捷按钮(SPEEDBUTTON):若干个按钮做为一组来工作,同一时刻只能有一个按钮处于按下状态,比如WORD中的四个段落排版按钮。在Delphi中实现这样的功能只需要简单的一个步骤:设置若干个SPEEDBUTTON按钮的GROUPINDEX属性设置为同一个大于0的整数。

还有另外一种快捷按钮,我们称之为开关按钮,比如WORD中的“粗体”按钮,这种按钮每按一次状态就改变一次。在Delphi中实现这种按钮只需要两步设置:首先设置按钮的GROUPINDEX属性为一个大于0的整数,第二步设置ALLOWALLUP属性为TRUE。这样就完成了开关按钮的建立。

通过调用API确定MEMO控件中的当前行和列。

你可以调用WINDOWSAPI中的EM—LINEFROMCHAR和EM—LINEINDEX函数来确定MEMO控件中的当前行和列,具体调用的过程见下面的过程。

varLineNum:longint;

CharsBeforeLine:longint;

begin

LineNumΚSendMessage(Memo1.Handle,EM—LINEFROMCHAR,Memo1.SelStart,0);

CharsBeforeLine:=SendMessage(Memo1.Handle,EM—LINEINDEX,LineNum,0);

Label1.Caption:=′Line′+IntToStr(LineNum+1)

Lab

el2.Caption:=′Position′+IntToStr((Memo1.SelStart-CharsBeforeLine)+1);

end;

动态产生构件并相应事件

方法:

var

MyBu : TBUTTON;

begin

MyBu:=TBUTTON.Create(Form1);

MyBu.Parent:=Form1;

MyBu.Left:=10;

MyBu.Top:=10;

MyBu.OnClick:=MyOnClick;

MyBu.Show;

end;

注:MyOnClick为响应的事件过程.

几个构件共用一段代码

方法:

(Sender as TStringGrid).Width:=5;

注:这样将发送消息的构件强制类型转换成TStringGrid类

并改变它的属性.

回车替Tab下移控件

需要用回车键代替TAB键下移一个控件时,把KeyPress设为True,加入下列代码拦截击键:

Procedure TForm1.FormKeyPress(Sender:Tobject;Var Key:Char);

Begin

if key=#13 then { 判断是按执行键}

if not (ActiveControl is TDbgrid) Then

Begin { 不是在TDbgrid控件内}

key:=#0;

perform(WM_NEXTDLGCTL

0

0);{移动到下一个控件}

end else

if (ActiveControl is TDbgrid) Then{是在 TDbgrid 控件内}

begin

With TDbgrid(ActiveControl) Do

if Selectedindex<(fieldcount-1) then

Selectedindex:=Selectedindex+1{ 移动到下一字段}

else Selectedindex:=0;

end;

End;

分行提示

无论你什么时候要分行显示的时候,只需要在字符串中间加入“#13”就可以了,但在属性框里却不能这么干,以下就几种控件加以说明:

begin

Label1.caption :='垂'+#13+'直'+#13+'显'+#13+'示';

Edit1.Hint :='输入框说明:'+#13+'文本的输入';

end;

运行时生成控件

㈠、运行时生成可视控件:以下以TEdit 控件为例

1.在Form的Public中定义TEdit控件

Edit1:TEdit;

2.在需要生成的地方加入以下代码:

Edit1:=TEdit.Create(Self);

Edit1.Parent:=Form1;

Edit1.Left ?:=20;

Edit1.Top :=20;

Edit1.Text :='Edit1 Text';

3.使用完毕后,释放分配的资源

if? Assigned(Edit1) then Edit1.Free; ?

㈡、运行时生成非可视控件:以下以 TTimer控件为例

1.在Form的Public中定义TTimert控件

Timer1:TTimber;

2.在需要生成的地方加入以下代码:

Timer1:=TTimer.Create(Self);

Timer1.OnTimer:=YourAction;

YourAction是自己定义的OnTimer事件,使用

procedure TForm1.YourAction(Sender:TObject); 完成

3.使用完毕后,释放分配的资源

if? Assigned(Timer1) then Timer1.Free; ?

闪亮登场:开发者制作图形图表所需的11款JS工具包 来自两位技术大牛的博弈:HBase或将制霸NoSQL? 应用改变世界 2013英特尔®创新应用大赛火热开启 看13位CEO、创始人和高管如何提高工作效率 对首次购买智能手机用户而言,苹果吸引力并不大 Amazon Appstore面向Web应用开放 开发者可添加应用内付费功能 CSC收购成功转型的大数据初创公司InfoChimps 嘀嘀打车发展报告:成全球最大出租车调度平台 又摊上事儿了,Android的MasterKey再次出现bug 比特币挖矿必备工具 硬件性能大比拼 RDBMS vs. NoSQL:反派为什么会得以存活并发展壮大 帮助优化移动网站:谷歌发布新指南和PageSpeed Insights工具 增强Web可用性,你需要避免的七大设计错误 Python六大开源框架对比:Web2py略胜一筹 海外看中国:老外开发者间流传着的7件事儿 京东云峰:电商移动云平台背后的技术 初创公司DigitalOcean:55秒搭建一个云服务器 分布式系统事务原子性的非阻塞实现 IBM发布基于人脑特性设计的全新计算架构和编程语言 16款加速编码的HTML5在线工具 JFrog:开源项目的最大挑战是文档和许可 5个技巧打造完美用户体验,不到两年完成用户万到千万的增长 CDN未来的机遇和挑战 华为S12700全可编程交换机进一步挑战思科 OpenFient创始人:将平台创新进行到底 专访Ubisoft手游团队:“波斯王子”的时光机器 技术大牛Jiva DeVoe:App Store往事追忆录 移动周报:苹果iOS开发者中8位公认的“女神” Paul Graham:创业者如何说服投资人? 【CTO俱乐部深圳站】企业大数据建设案例分享 Gmail新设计影响邮件营销 Fcaebook间接获利 家有两小(他) 不用数据库怎么实现用户注册! 大家能问点有深度的问题吗? sql中创建视图有什么用,怎样创建?请教 支持国产软件——海威数据仓库前台工具Hdc3.x下载 救救我的linux啊?它快不行了。 回答“一个动态创建孔件时的错误,请大家指点”贴后请到这里面领分(共700分)(六) 怎么在Applet中定时显示一数值? 受不了啦,有谁在上班时间在CSDN泡上一天的?? COM、DCOM、COM+有何区别? 该死的缓冲:document.all("pb").innerText="fas"; 这个问题,我不会!你呢??来看看! 请问如何用ASP同时上传多张图片? 哪位大侠能提供关于"资源文件(*.rc)"在BCB5中使用的系统、详细的资料? 菜鸟问题:我想用一个win32 api函数但是不懂得如何使用。 listview与数据库的一系列联系,重点!!! 请教!!!帮帮小弟!!! 两周了--还是不行 怎样取得本机的名称? 我想听网络广播, 怎样做呢? 一个小问题 ????? 回答“一个动态创建孔件时的错误,请大家指点”贴后请到这里面领分(共700分)(七) 计算机知识大赛 我的问题很简单,可是我不会! 回答“一个动态创建孔件时的错误,请大家指点”贴后请到这里面领分(共700分)(八) 这样的游戏一个值多少钱?请报价。 高手快进!小弟有一事不明!!告急! 取ADO的recordset对象的recordcount属性总是 -1,如何解决? 这样的网络游戏一个值多少钱?请报价。 软件发布:《加密樵夫》 软件发布:《加密樵夫》 谁有Dreamweaver4.0的注册码,我晕,555555555…~~~~~~~~~ 我曾在本论坛看到一篇“用纯ASP代码实现图片上传并存入数据库中”的文章,可是怎样实现一个页面上传多幅图片呢,高手能否帮忙看一下? 如何检测一个超链接是不是死链接 软件发布:加密专家系统 只要点一下,妹妹我就以身相许 谁有Dreamweaver4.0的注册码,我晕,555555555…~~~~~~~~~11 请问只要是线程就有消息队列,还是此线程产生window后才有消息队列?在控制台程序中,在消息循环中,当受到一wm_timer消息时,此消息将发送给那一window procedure? 软件发布:三维几何画板 CSDN有徐州的朋友吗 请教高手一个关于图像格式的问题 高手清帮忙:如何获得一个控件的电子签名认证?急,急,急! 觅有时间有经验用MAPINFO开发GIS的高手? IE 能不能同时浏览2种以上不同设置的网页? 初级asp问题 询问-----上海在哪里有软件考试报名? 怎样用SDK的方法改变文本框的前景色和背景色?(内空) 能推荐几个有关COM、ActiveX技术的网站吗?每个10分不够再加。 请问ljhua,ASP网页怎样调用*.bat文件,是服务器上的还是客户机上的bat? ****************** 先散掉点分,省得走的时候累赘 ****************** UNICODE和WinMain 1-9个数字填入81个小方格内用1-9个数字填入81个小格内,横 竖不能出现任何一个重复数,不用计算.第一行横的第一个格是8,第二个格是2,第九个格是7.第二行横的第一个格是9,第四个格是1,第七个 第8-10题) 关于音标的几道题……根据相应的音标补全单词1./əu/ h_le thr__t g__t b__t2./ɔi/ b__ t__let t__ s__l3./ai/ b_k_ m_ k_t_ fl__4./eə/ p___ ch___ b____ h_____5./au/ h__se h__ n__ gr__nd6./ei/ c_k_ d__ m__k__ pl__7./iə 将1-9共九个数字填入方格中将1-9这九个数字填入空中,使三个等式成立 (不能重复)①( )+( )=( )②( )-( )=( )③( )*( )=( ) 初中数学,这道题是怎么算出来的?第8题 图为一台电热水器的电路示意图.当开关S闭合时,电热水器处于加热状态,功率为440W;当S断开时,电热水器处于保温状态.整个电路的功率为22W.求:(1)当S闭合时,电热水器工作5min消耗的电能为 一、用修改符号修改短文星期六我们全家去了颐和圆.上午,一进门就看见了有白的,黄的,紫的,色彩鲜艳的蝴蝶花,非常美丽.有几只漂亮的蜜蜂,正在这些花上辛勤采蜜.妈妈说:"公园多美呀 ""能 反比例函数y=k/x图像经过点(3,2014/3)p为其图像上一个整点(注:整点表示很坐标纵坐标均为整数的点),那么x+y的最大值是 四年级下册的口算练习题,一定是乘除法的.20道比如:0.5×10= 最好有答案. 点C在以AB为直径的半圆上,∠CAB的平分线AD交BC于点D,⊙O经过A D两点,且圆心O在AB上.1:求证:BD是⊙O切线.2:若AC/AB=1/4 BC=4√5 求⊙O面积(这题没有图) (第22章第三单元测试卷答案)(第23章第二单元答案)(第23章第三单元答案) 一个长6dm、宽5dm、高8dm的长方形容器内装满水.这个容器内水的体积是( )立方分米.把一根24dm长的铁丝折成一个最大的正方形,它的面积是( )平方分米.把一根24dm长的铁丝折成一个最大的 把1.2.3.4.5.6.7.8.9.分别填到方框里,每个数只用一次.()_( )=() ()把1.2.3.4.5.6.7.8.9.分别填到方框里,每个数只用一次.()_( )=() ()_()=() ()÷()=() 毛纺厂男职工人数是女职工的3分之4因工作调走33名男职工现在男女人数比是4:9问女职工有多少人 初中数学七年级下人教版基础训练第39页第8题答案 把0、1、2、3、4、5、6、7、8、9分别填到下面的方框里(每个数字只能用一次),使三个算式都成立:( )+( )=( )( )-( )=( )( )*( )=( ) 想找个问题问都这么难,没有问题问怎么办? 新课标人教版二年级【下】语文单元测试卷【4】 0 1 2 3 4 5 6 7 8 9这十个数字填在下面的方框里,使等式成立 ()+()=() ()-()=() ()+()=() 可是我现在没有问题该怎么办? 七年级英语报刊急练习题 将1,2,3,4,5,6,7,8,9这九个数字填入3*3方格中,要求每一列的三个数 我没有问题想问,怎么办啊 七年级英语练习题报刊 把1.2.5.6.6.8.9.9分别填在方框里,使每一边三个数的和都相等口——口——口| |口 口| |口——口——口 我想问问题,怎么办呢 七年级英语报刊练习题急 将0,1,2,3,7,8,9填入下面的方框内,使算式成立:□+□=□□-□=□□ 数字不得重复使用 问到没有问题又想问问题怎么办! 英语报纸习题,初一上一.根据所给句子完成下句,是两句意思相同或相近.每空一词1. He reads English for thirty minutes every morningHe __ __ __ __ __ English every morning2. I don't know the answer to the question.I don't kn 把1、1、1、2、2、2、3、3、3 这9个数字分别填在横3格、竖3格的方格里,使得方格里横行、竖斜、斜行上的3个数的和都等于6.请问怎么填 新起点 初中数学同步单元测试卷七(上)(十)26题怎么做啊? 平方根报纸练习题初一下1.一房间的地面恰好由64块正方形地砖铺成,共16平方米,求每块地砖的边长.2.已知2a-1的平方根是+3,-3,b+14的平方根是+4,-4,求a+2b的平方根. 9乘9方格填数怎么做496,8,5,9,7,6,15,6,7,4,,1,5,7,,3,1,2,69,4,2,6,1,5,362怎么能让横竖填上1-9后没有重复数字. 说废话的别来.算了自己做好了随便找个人说句话啦要分的快啦 七年级英语报纸U7——U9练习题1.根据首字母及句意提示,完成单词.My sister most of his time on his work every day.2.句型转换Peter isn’t doing his homework now.(用last night 作时间状语改写句子)3.用介词填空.1.< 把1——9这9个数填入一个横竖都3格的方格中,使横.竖.斜行的数和相等,怎么填?把1——9这9个数填入以下格中,使横.竖.斜行的数和相等()()()()()()()()() 二期课改配套教辅读物2011-2012学年度 修订本光明日报?出版社 七年级上学期英语报纸13期频度副词练习题请快点谢谢我爸爸总是很忙. my father ______ _______ busy. 2.玛丽经常帮她妈妈打扫房间 mary ______ ______ her mother clean the room. 3.我通常早上七点吃早餐. i 2.3.6.7.8.9这六个数填入方框里使等式成立,每个数字只能用一次 ()+()=()()-()=1() 二期课改配套教辅读物 试卷7, 高中生订阅哪些报纸、杂志来提高英语阅读能力?最好有中文翻译的,或者后面有练习题可以检测是否读懂? 在1--13这十三个自然数中选出十二个填入右图的小方格中,使每横行的四个数之和相等,每竖列的三个数之和也相等,那么横行竖列的和各是多少?(4*3的小方格) 初中数学 同步练习与测试 的答案 急需 西游记练习题西游记每回合出三个问题 谢. 将九个不同的自然数填入下列方格中,使横行,竖行,对角线的三个数的积相等. 1、已知(x+my)(x+ny)=X的平方+2xy-6y的平方,求(m+n)mn的值.2、已知:a的平方+a的平方分之一=3,求a-a分之一的值.3、若4x的平方-3(a-2)x+25是完全平方式,求a的值.4、当x为何值时,x的平方+6x-15有最值.5、求 西游记的练习题读完西游记后,哪些练习题可以出?要多而且精,最好不要选择和填空,多些理解性的题,如:孙悟空是个怎样的人物等等. 将-4,-3,-2,-1,0,1,2,3,4这九个数分别填入九个方格内,使横,竖,斜三个数相加得0 初中数学 第八题 西游记的相关练习题要有答案的! —18,—15,—12,—9,—6,—3,0,3,6填入一个3乘3的方格,使横,竖,斜,对角的三个数字和都相等 初中数学!第八题,谢谢! 西游记试题是要提问题的,就是帮我写一些西游记的问题,是关于每一章回提问的,我只要第70~100章的,每回提2个问题,一共60个,至少40个,如果我采用了,会追加很多分的~不对,我的意思是关于每回 123456789填入81个方格中,每一行和每一列和为45.其中全部9个小方格中的每一行和每一列(有三个数)和为15.请各位说说,我有急用.也就是说每一行每一列都要有123456789,就是由9个九宫图组成, 如图,在△ABC中,AB=AC,以AB为直径的○O分别交BC,AC于点D,E,连接EB交OD于点F.(1)求证OD⊥BE(2) 若DE=√5/2,AB=5/2,求AE的长. 西游记的习题越那难月好 在25乘25方格纸中,将1到9九个数字填入没的小方格,求他们的和 某铁桥长1000米 现有一列火车要从桥上过 火车完全通过桥需要60秒 整列火车在桥上的时间是40秒 求火车的速度和长……列出方程组并说明理由就行了 比如 火车的长度等于. 一道物理题,(双选)一个物体底面积为0.1平方米,桌子的底面积为1平方米,物体重200N,那么桌子所受物体压强为A.可能是200pa B.可能是2000PaC.可能是4000Pa D.可能是1000Pa双选双选!
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn