编写适用WinCC的控件
编程学堂
题目难度:★★★★★
读者求助:我使用WinCC(西门子的人机界面开发软件)设计了一个生产线监控程序(生产线产品的跟踪程序是用Delphi写的),监控现场设备的运转状态,例如电流电压等。为了节约成本,现场只能购买一台计算机,请问我如何在一台计算机上同时使用WinCC的监控软件和Delphi的产品跟踪软件?
程序员 故乡的云:你学的是工业编程吧,很有挑战难度,我喜欢。这个问题的解决方法是,把跟踪程序做成ocx控件,然后在WinCC开发环境中把ocx控件注册后插入窗体中,这样不用退出WinCC运行环境,就能使用跟踪程序了。
Delphi开发ocx控件的流程如下所示:启动Delphi,点击菜单“File→new→other”,在弹出的对话框中选择ActiveX标签,再选择“Active Form”,点击“OK”按钮在弹出的对话框中的“New ActiveX Name”处输入benben即可。
然后设计benbenImpl1窗体并保存项目文件。例如在窗体中添加3个Edit,1个Button,把Edit3的ReadOnly设置为true,在Button1.OnClick事件中写入代码:Edit3.Text:=IntToStr(StrToInt(Edit1.Text)+StrToInt(Edit2.Text));,代码的意思是Edit1的值加上Edit2的值显示在Edit3中,且Edit3不可输入。
接着,点击菜单“Project→Build benbenProj1”,在项目文件夹中就可以找到benbenProj1.ocx。点击Windows的开始菜单,选择“运行”,在运行框中输入regsvr32 D:\ocx\benbenProj1.ocx,注册ocx控件。最后我们启动WinCC,添加ocx控件即可。需要注意的是,编写ocx控件后需要进行调试。
