1. 窗体开放简单接口
一个Form2窗体中定义3个变量,并且拥有get/set 属性,外部程序算法返回的名称直接可以给予赋值,
也就是该窗体拥有3个对外开放的接口。
Form2:
private string _fixedTemp= "算法名";
public string FixedTemp
{
get{ return _fixedTemp;}
set{fixedTemp= value;}
}
Form1里:
Form2 frm2 = new Form2();
frm2.FixedTemp="新算法名";
2.监控系统脱离SQL数据库 的数据对象设计
脱离数据库:
DataModule dm =null; //数据对象模型
DataAccess da = null; //数据库操作类
DataCollection =dc =null; //数据集合类
dm = da.GetSysConfig();//得到数据对象
3. 模态窗口和非模态窗口
模式对话框(modal dialog box模态对话框):在关闭模式对话框之前,程序不能进行其他工作(如一般的“打开文件”对话框) ----.showDialog();
无模式对话框(modeless dialog box 非模态对话框):模式对话框打开后,程序仍然能够进行其他工作(如一般的“查找与替换”对话框) --show();
对话框的显示有两个函数,一个是.show();另一个是.showDialog();第一个函数是以非模态对话框的形式显示,调完后会执行下面的函,当然会执行frModel.Dispose();所以弹出之后自动消毁了。改为第二个就是模态对话框了。要手动关闭
Form2 f2 = new Form2();
f2.ShowDialog();
//在f2的窗体弹出以后,将在f2窗体上进行操作,Form1暂时被限制操作
Form2 f2 = new Form2();
f2.Show();
//在f2的窗体弹出以后,将接着弹出下面,Form1和新弹出的f2可以同时存在,并随便你操作哪个窗体,f2关闭以后也不会对Form1产生什么影响,
4.采集温度数据的线程
开始采集按钮事件btnStart:
private Thread thread = null;
Gather gather =new Gather ();
if(gather.StartGather())//启动采集类中的采集事件
{
thread = new Thread(new ThreadStart(ScanStart));//采集温度
thread.Start();
}
采集类 Gather.cs:
private Thread oThread = null;
public bool StatrGather()//开始采集
{
try{
oThread = new Thread(new ThreadStart(ScanTrace));
oThread.Name ="温度采集线程";
oThread.IsBackground = true;
oThread.Start();
return ture;
}
catch{}
return false;
}
public bool StopGather()//停止采集
{
try{
oThread.Abort();
dts.StopDevice();//停止驱动
oThread.Sleep(1000);
dts.CloseDevice();//关闭驱动
return ture;
}
catch{}
return false;
}
public voud ScanTrace()
{
//扫描温度代码
}
main 界面程序From1.cs
void ScanStart()
{
while(true)
{
for(int i = 0; i< 2 ;i++)
{
if(gather.GetGatherFinishFlg(i))
{
showChannelsTemperatureChart(i); //显示曲线
}
Thread.Sleep(1000);//暂停1s
}
}
}
5.HashTable :根据Key取得Value
HashTable _gatherHT = null;
public bool GetGatherFlg(int chnlKey)
{
lock(this)
{
if(gatherHT.Contains(chnlKey))//是否包含特定键
return (bool) _gatherHash[chnlKey];
}
return false;
}
分享到:
相关推荐
Oracle DBA表明了本书的服务对象,工作笔记意味着这是一本实践操作手册,而迁移和性能调优则具体指出了DBA工作的两个重要方面。 内容中特别提到的“试读版”,意味着本书的版本是提供给潜在买家阅读部分章节的,...
上传一份自己从学习到工作整理出来的android的笔记,会不断更新,希望对初学者有用
WF工作流笔记是一个压缩包,其中包含了18个doc文档,专门探讨了工作流这一重要IT概念。工作流,简而言之,是业务流程的自动化管理,它涉及到任务的分配、执行、监控以及优化,旨在提升组织效率和协同工作能力。在本...
综上所述,这份Java读书笔记可能涵盖了JVM的工作原理,特别是类的加载和执行过程,以及this关键字在代码中的应用。通过阅读Execution.htm和初始化总结this关键字.ppt,读者可以深化对Java程序执行流程和对象初始化的...
《300条MTK工作笔记》是一份珍贵的资源,包含了在MTK(MediaTek)工作中积累的丰富经验和知识。MediaTek是一家知名的半导体公司,以其在无线通信、数字电视、移动设备等领域的芯片解决方案而闻名。这300条笔记涵盖了...
工作流学习笔记——很好很详细 工作流(Workflow)是一种自动化业务流程的技术,它将复杂的任务分解成一系列可管理的步骤,并按照预定义的规则和条件执行这些步骤。在.NET框架中,Microsoft提供了Windows Workflow ...
《C语言工作笔记——含图片》是一份珍贵的个人学习与工作经验总结,作者在实际工作中积累了大量的C语言编程技巧,并通过详细的笔记形式分享出来。这份资料不仅包含了基础的语法讲解,更聚焦于解决实际问题的方法,是...
【标题】"在工作中对VC工作笔记"涵盖了在使用Visual C++(简称VC)进行软件开发过程中的实践经验与总结。这份笔记可能包含了作者在实际项目中遇到的问题、解决方法以及对于VC工具和库的深入理解。 【描述】"一些...
工作流引擎jbpm学习笔记 jbpm是一个专业的工作流引擎,用于定义、管理和执行业务流程。它可以帮助我们简化工作流程的开发和维护,提高工作效率和可扩展性。 一、什么是公文流转? 公文流转是指公文在定义流转中的...
总之,“思源笔记插件——汇总散落在整个工作空间的任务 Siyuan Note Plugin”是个人知识管理与任务管理的一个强大工具,无论是日常学习还是工作,都能为我们带来极大的便利。只需简单几步,就能让我们的任务管理变...
这份压缩包文件"Java学习笔记&工作经验总结.rar"包含了多个PDF文档,分别涵盖了Java的基础知识、高级特性、数据结构以及学员的学习总结,是深入理解Java编程的宝贵资料。 1. **Java SE基础全程学习笔记.pdf**: 这...
这份"Linux学习笔记(强悍总结值得一看)"是Linux初学者的宝贵资源,也适合有经验的用户作为参考手册。以下是对笔记内容的详细概述: 1. **Linux常用命令**: Linux命令行是其强大的工具,掌握常用命令是Linux学习...
这里需要说明的时,该文档是本人5年工作经验的积累,文档中大部分知识点来源于实际工作中的总结,(除了JAR等资源文件外)其代码都是可运行的,还有一部分知识来源于网络或者其他书籍,这里做一些收集,使该体系更加...
2020年CFA一级高鑫学习笔记是一份宝贵的资源,旨在帮助考生系统地理解和掌握考试内容。 1. **CFA考试逻辑**(附件一) CFA考试不仅测试考生的知识,还考察其解决问题和应用理论的能力。附件一可能详细介绍了考试...
这一步骤将确保笔记列表栏目的大小被正确地保存。 五、调整笔记编辑框 笔记编辑框是用户编写笔记的主要区域。调整笔记编辑框的大小可以让用户更方便地编写和编辑笔记。用户可以通过拖动笔记编辑框的边缘来调整其...
标题 "onenote笔记.zip" 暗示了这是一个包含Microsoft OneNote笔记的压缩文件,而描述 "我的onenote笔记" 表明这是个人创建或收集的一系列笔记。OneNote是微软出品的一款强大的数字笔记本应用,它允许用户组织、编辑...
本文将深入探讨“Linux工作笔记”中涉及的一些关键知识点,包括select多路复用、Makefile文件、Shell脚本、DDNS(动态域名解析)、文件读写、编译内核、鸟哥私房菜Linux教程、转义字符、版本控制工具SVN以及Makefile...
【个人笔记压缩包导出笔记】是一个集合了个人学习、工作和思考的珍贵资源库,它代表了用户在使用为知笔记这一知识管理工具时积累的各类信息。为知笔记作为一个强大的个人信息管理平台,允许用户方便地整理、存储和...
映象笔记,又名Evernote,是一款功能强大的跨平台笔记应用,它允许用户在各种设备上创建、存储、同步和管理他们的笔记。...通过这次下载,用户将能够享受到最新稳定版的映象笔记服务,提升自己的知识管理和工作效率。