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

用Delphi设计拨动、跳线开关组件

HTML文档下载 WORD文档下载 PDF文档下载
用Delphi设计拨动、跳线开关组件

----计算机测控系统中常使用各种计算机测试板卡,在这些板卡上多设有各种编码和跳线开关。在编写与之配用的测控程序时,常需编写这些开关操作时的相应程序,如果有一个编码或跳线开关组件是十分有帮助的。以下是我用Delphi编写的一个BiSwitch控件。

----此控件由TGraphicControl继承而来,具有常用的属性,如Enabled、Tag、Hint等,此外新增加了State

Color属性。对于编码和跳线开关,只有两个状态(ON和OFF),在预先编辑好的资源文件中存有开关在不同状态下的图片,当开关改变状态时将相应的图形显示出来,开关在屏幕上就能被“拨动”了。Color属性用于开关的背景与窗口背景颜色配合,取红色有较好的视觉效果,绿色和黄色是电

路板常用的保护漆色,当Form被模拟成电路板时这会有所帮助(通过修改资源文件可以得到你想要的开关颜色和形状)。

----DIP封装的编码开关有4位、8位、12位等规格,跳线开关则可以任意数量使用。将BiSwitch组合使用就可以满足不同位数的要求,所附的SWITCH程序中就有一个8位编码开关的例子,效果如图。下面以双诺公司的AC1032数字I/O卡上的SW1开关说明使用方法,SW1用于设定测试卡在计算机中的基址,其开关SW1的位2确定基址的位10,开关位8确定基址的位4,基址位10以上接地,位4以下供测试卡自用,基址调节范围从210H-7F0H。为了使编码开关的拨动与基址对应起来,将每一个BiSwitch的Tag属性赋值为相应基址位的数值,如开关位8的Tag值为4,开关位1未使用Tag为0。在每一个BiSwitch的OnClick事件中都调用doSwitch来响应。

Procedure doSwitch

var

bs : TBiSwitch;

begin

bs := (Sender as TBiSwitch);

{改变开关的显示状态 }

bs.State := not bs.State;

{根据Tag的值确定新的基址 }

if bs.Tag >0 then

begin

{ HiByte

LoByte为窗体的私有变量作为中间变量计算基址 }

if bs.Tag >7 then HiByte.SetBit( bs.Tag-8 )

else LoByte.SetBit( bs.Tag );

end;

{将新的基址赋值给测试卡 }

pc1032.SetAddress(HiByte.FValue * 256 + LoByte.FValue);

{在窗体中显示新的地址 }

lbAddress.Caption := Format

('BaseAddress is %xH'

[pc1032.GetAddress]);

end;

《近匠》第05期:移动开发工具访谈,个推——有节操的push 【Hadoop技术博客推荐】Hive的那些事 Twitter联合创始人推社交搜索应用Jelly 马云“食言”进军手游分成比例8:2,开发者可拿7成 CodeCombat游戏全面开源:玩游戏也能学编程 Netflix首席云架构师Adrian Cockcroft加盟Battery Ventures Android 4.3附体:RIBX发布FB/Ti 互联网手表 IE11界面布局的秘密武器:Quero Toolbar 【开源专访】Node-Webkit作者王文睿:桌面应用的全新开发方式 CentOS归属红帽:企业级Linux领域社区与商业的融合 印度初创公司Little Eye Labs证实已被Facebook收购 雅虎收购Aviate:重在提升用户体验 SDN领域硝烟再起,Oracle将Corente收入囊中 Hadoop科普文——常见的45个问题解答 CES 2014:奥迪下一代汽车将采用NVIDIA的芯片! Cocos 3.0 Beta发布:更易用、更友好 开拓新兴市场?诺基亚或推Android手机,UI界面遭泄露 预测2014大数据值得关注的8个发展方向 霸主地位再临挑战?Salesforce CEO,我们不只有Oracle LBS应用新星、“司机好助手”微车借力移动互联网,志在打造车主的个人移动门户 新一代IDE Light Table开源:让编程工作更简单 图片应用也能高大上,看Cooliris如何玩转无人机 拥抱Spark,机遇无限——Spark Summit 2013精彩回顾 1月10日:改变世界的iPhone七岁了,你是传奇! 同洲电子推出首款手机操作系统960OS 免费授权使用 如何在Windows 8.1的IE11中打开同步选项卡? 25年老对手评价微软:换CEO可行,但是太迟了 【PPT集萃】十位一线专家分享Spark现状与未来(三) 万元奖品等你拿!2014创客118新年大Party! Firefox OS的2013回顾和2014展望 Strom8 CEO:搞好手游开发,合伙人很重要 有谁知道windows系统的屏幕保护的通用密码 如何自动刷新网页?在线等待! 有谁知道window系统的屏幕保护的通用密码 怎样建设Java服务器?? 我用DELPHI打开了一个FOXPRO表,我想把FOX表的一个数字型字段(N.9.2)的一个数据(99.9)传给DELPHI中的一个变量,问这个变量是什么型的,是string,integer.? 请教Powerdesigner??? 一个ADO的问题,送上38分! 怎样在VB.NET中运行IE 在对话框显示时,怎样得到其位置? 上午62,下午54,有希望不? 关于串口打操作 一个关于InstallShield的小问题 本人朱小军,专门发帖子说有好东东,但是呢,每次都失信,各位,不要再相信我了。进来投一票吧。 关于串口的操作 如何在Delphi中调用函数StrTok? 那位大哥能否帮一下忙,详细告诉一下怎么安装fastreport,谢谢 请教一个 runtime的问题! 怎样使网页自动关闭且不出现提示框? double 和 str 如何转换? 如何将数据保存的二进制文件及如何读到及如何查询其中的数据??? 请教一个关于SQL语句的问题 高手请进,或许你知道 TechnoFantasy(www.applevb.com) 请进来取分,Taozc。 问大家一个基础问题? 怎么让FRAME启动时就为最大化的状态? 我想向各位高手请教关于对象序列化的问题! 现在很急,多谢各位! 如何获得像资源管理器上的桌面上的我的电脑,网上邻居等等 求救,关于打印机。 紧急!!!请教各位大虾: VC6上的MDI程序,我要在VC。net上运行,该怎么合理的修改?? 我也要《全套国标软件设计文档》,有谁收到了可以发一份给我吗?谢谢. mdb删除的问题,应该很简单吧 紧急求助,各位大虾: VC6上的MDI程序,我要在VC。net上运行,该怎么合理的修改?? 关于失去焦点的问题,求教 求教:怎样屏蔽系统的英文错误信息,而显示中文信息提示用户操作? 请教一个用delphi5做的录入图片的程序 crack对收入影响好大啊 哪里有vb控件下载? 请问一下按钮click事件用鼠标激活和用回车键激活有什么区别啊? 如何使用控件数组?Delphi支持吗?.......................................... 高分求助.....在SQLSERVER中如何判断一个CURSOR是否已经存在或被声明...急急急急急急急急 请问那里有COM相关的书籍下载?? ADODB.Recordset 错误 '800a0bb9',有源码,各位大虾帮忙啊 郑伟在吗? 在oracle81中,怎样给表起一个别名 如何在点窗口上的关闭按钮后不关闭,而是最小化???? 在pb中声明和执行sql server的存储过程。 谁用过jb6呀,比起jb5有什么优点呀,是方便,快,还是功能多??那位先驱介绍介绍嘛? mdb删除的问题,应该很简单吧.来拿分吧 以前我问过的!无人能答!高手请进!如何得到得到系统当前所有IE窗口中地址栏中的地址? 请教大虾: VC6上的MDI程序,我要在VC。net上运行,该怎么合理的修改?? java jdk版本,oracle的JDBC驱动和oracle版本的兼容问题请教 怎样知道两种化学物质能否反应 在书上看到氨水,氢氧化铁,氢氧化铝都是共价化合物,为什么呢有些地方说氢氧化铁是离子化合物,我却在某本书上看到是共价化合物,还有,麻烦解释的浅显一点,不要太难了. 比金子更名贵的是什么?最好能从低到高做个排名,都要比金子名贵! 为什么温度计会升高有的温度计还有零下的温度,为什么温度计还可以升到零下温度的高度? 为什么不能用过量的氨水和饱和氯化铁溶液制取氢氧化铁胶体? 氯化铝溶液中滴入氨水离子方程式. 为什么温度计刚放入热水中温度会先下降后上升 黄金怎样提纯 向AlCl3溶液中加入过量氨水制备氢氧化铝的离子方程式是? 下列物质中,适宜于用于治疗胃酸过多的胃药是() A.氢氧化钠 B.熟石灰 C.氢氧化铝 D.烧碱 铝箔纸吸热本领如何为什么 大火会不会融化金子?剧烈的爆炸和大火会不会对金饰造成伤害?会步灰融化它?紧子的熔点是不是很高啊? 写氢氧化钠和氢氧化铝的反应化学方程式出来 怎样能把王水里溶化的黄金提炼出来呀 什么东西可以把黄金融化 用温度计测试不同光的热效应时,可以可以将玻璃泡涂黑,从而使它的示数变化更明显,其理由是什么?实验表明什么的热效应最大 铝箔纸和纸盒牛奶的纸哪种纸的吸热更快就是那个利乐盒的包装纸和屋顶盒的包装纸哪个比热容高.利乐盒是铝箔纸和纸还有xx组成的 纸盒那种是由蜡和纸组成的对吧-_-||种种因素考虑在内… 用蜡烛作小孔成像实验时,在厚纸板的不同位置上扎四个小孔,则在光屏上可能会出现什么像 用温度计测试不同区域内光的热效应时为了使温度计的示数变化更明显可以将玻璃泡(),实验表明()的热效应更显著. 黄金是怎么提炼的 关于化学物质的能量与自身稳定性之间的关系`?有C石墨=C金刚石 △H>0可知,金刚石的能量大于石墨的能量,因为△H=反应物的键能-生成物的键能及△H>0可知,石墨的键能大于金刚石的键能,所以石 为什么化学物质不碰到也会反应试管里放着适量稀盐酸,管外,放着一些大理石,在密闭锥形瓶中.为什么会反应? 白色、粉色、黑色蜡光和铝箔纸在同一时间内受阳光照射,吸热速度哪个最快、哪个最慢,依次排序是什么?这是小学科学五年级物体的颜色与吸热本领的关系的问题, 已知氢氧化铝能溶解在过量的氢氧化钠溶液中生成偏铝酸钠(NaAlO2)溶液,有关化学方程式为:Al(OH)3+NaOH=NaAlO2+2H2O.现有160.0g某无色溶液,可能含有盐酸、硫酸镁、硝酸钾、硫酸铜、氯化铝 化学物质怎么看反应不反应置换反应怎么看?化合反应怎么看?复分解反应怎么看? 初中化学物质的提纯方法 正3价的铝离子和氢氧化钠反应为什么有时候生成氢氧化铝有时候又生成偏铝酸钠呢?我在资料书上看到硝酸铝和氢氧化钠反应生成偏铝酸钠,而氯化铝和氢氧化钠反应却生成氢氧化铝,这是怎么 长期服用含氢氧化铝的药物治疗胃酸过多症 容易引起老年痴呆症的原理 氨水为什么不能和氧化铝反应?说明理由,我认为可以反应,生成AL(OH)3。 A,B,C,D,E是初中化学中常见的5种化学物质.其中B和E是空气中的两种气体,C是铁锈的主要成分.A与B可反应,D与B可反应,A与C可反应.A与E可互相转换,B与E可互相转换.C生成E,D也可生成E. 关于氢氧化铝的化学常识有哪一些? Al2O3是两性氧化物,所以它能溶于盐酸也能溶于氨水 为什么错 A、B、C、D、E、F为六种中学化学中常见的物质,有如下转化关系:A和B反应生成D和E,B和C反应生成E和F(1)若A、C、E皆为氧化物,且E为有毒气体,B、D、F皆为非金属单质,且D为气体.则A的结构式为_ 黑色卡纸吸热还是黑色蜡光纸吸热快? 制氢氧化铝为什么用氨水能否用碳酸氢钠和氯化铝 有六种常见物质,他们直接可发生如下反应:A与B反应生成C和D,C与F在放电条件反应生成E,A与F在不同条件下,可生成C或生成E,但另一种产物均为无色液体.又知:BCF都是气体单质,切B为黄绿色,A和D 黑色腊光纸和黑色无光纸哪个更吸热? 氨水能溶解氧化铝和氢氧化铝么?为什么? 铝与氢氧化钠反应生成氢氧化铝后那么剩余的氢氧化钠优先与铝还是还是氢氧化铝反应 黑色塑料袋内放水,放入温度计系好,放在阳光下 发生了哪些能量的转化黑色塑料袋内放水,放入温度计系好,放在阳光下发生了哪些能量的转化?Thanks!写什么能转化为什么能的形式 红色更吸热还是黑色更吸热?为什么? 提练金子时的化学物质对土壤有哪些破坏 温度计里面的水银在太阳底下晒会挥发吗我在家门口不小心把量体温的温度计打碎了,水银洒落一地,我没有做任何处理,我家问口能够晒到太阳,请问水银需要多长时间才能挥发? 黑色为什么吸热快? 春天,池塘里的水渐渐变成绿色,我将它取出来放在阳光下,几天后,水的颜色发生了什么变化 太阳下的温度计,与瓶子玻璃里的温度计相比较,哪个温度高些 氢氧化铝与盐酸反应的现象 黄金遇到什么化学物质会出现白色斑点 铁锡原电池和铜银原电池哪个反应快我是说在潮湿的空气中,形成电化学腐蚀的速率 为什么偏铝酸钠和过量的盐酸反应生成的是氯化铝,和少量的盐酸反应是氢氧化铝呢? 春天,池塘里的水渐渐变成了绿色,我们用杯子把它取出放在阳光下,几天后有什么变化,为什么?再过几天呢? 什么药水跟铜反应跟氧化铟锡也就是ITO,不反应的 各化学物质反应规律? 氯化铝和浓氨水反应化学方程式 用含有氢氧化镁的药物治疗胃酸化学式 有机化学物质反应规律网络 氯化铝和氨水反应的反应类型是什么 氢氧化镁受热分解反应的化学方程式 例如 酸和碱反应生成盐和水.金属氧化物和.反应生成.之类 不断对玻璃瓶抽真空,设想理想状态,玻璃瓶中有水,求现象玻璃瓶会爆炸吗,求原理
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn