C# 采用线程重绘图形要点记录

大家都知道J2ME 采用一个线程去获取数据,然后得到数据后更新屏幕是件很容易的事情,
比如
Thread{
public void run(){ 
getData();
repaint(); 
}

}
这样做就OK了

但是这个方法在C#上能成功吗。
答案是NO,为什么呢。安装他们的APIs的说法是,采用线程更新屏幕的是应该要用一个委托的方式来执行。

看看我是怎么做的。

Thread{
public void run(){ 
getData(); 
updateWebBrowser();
}

delegate void Repaint();

public void repaint() 
       {

this.webBrowser.repaint(); 
       }

/** 
        * 更新视图
        */
       public void updateWebBrowser() 
       {
          //这里是更新屏幕的代码,看各自需求做相应的实现。 
       }

}

上面就是C#的处理方式。应该也是可以理解的

C# 采用线程重绘图形要点记录

时间: 2024-10-30 17:15:23

C# 采用线程重绘图形要点记录的相关文章

UC/OS-II功能介绍、要点记录

通过不断地学习和实验UC/OS-II,终于在五一前在ARM平台上实现了多任务的创建.调度运行.挂起,任务间信号量.互斥型信号量.邮箱.消息队列和事件标识组方式下的通信机制,接下来则继续学习UC/OS-II的移植方法,在此趁五一假期之际,我将UC/OS-II的特点用自己通俗的语言介绍一下,希望能让大家在没接触UC/OS-II的情况下大概明白UC/OS-II的用处和特点,共同学习和进步,为学习UC/OS-II的同学提供有用的资料.另外,如有错误和不当之处,还请指正和发表您的心得体会. 谢谢! 一.有

C++ Java要点记录

简单介绍 依旧记得当初学习C++的理想----开发游戏外挂,记得在大学开发的第一款游戏外挂是连连看,读取地址数据,然后算法匹配,模拟单击事件,当时被很多同学羡慕妒忌. JAVA开发是2012年3月份開始开发Android后专注的,Java的学习是在大学完毕的,当时JAVA考试95分满以为Java没啥难的.后来从事android开发发现自己对java的理解不深. 内容 Java要点 要点 定义 描写叙述 基本数据类型 1.byte(8)2.shot (16)3.int(32)4.long(64)5

java导入导出Excel数据的要点记录

< 客户端的B/S架构输出方式 加下划线这部分代码是B/S模式中采用的输出方式, //获得输出流,该输出流的输出介质是客户端浏览器 OutputStream output=response.getOutputStream(); response.reset(); response.setHeader("Content-disposition","attachment; filename=temp.xls"); response.setContentType(&

man手册要点记录

记录一些要点,便于以后查询... 1.用Linux的人都知道man手册,类似于帮助文档,很有用.下面记录man手册的一些用法.man手册后面的参数可以是命令,函数或文件名. 2.man手册有好几个部分(section),用数字进行区分: (1)用户命令: (2)系统调用: (3)C函数库: (4)设备和特殊的文件: (5)文件格式和惯例: (6)游戏: (7)杂项: (8)系统管理工具和守护进程 3.man的一些可选选项: -a:显示所有匹配参数的man手册;-D:显示调试信息:-k:在命令的简

iOS中Storyboard使用要点记录

摘要: Storyboard的使用与原本单个xib文件的使用还是有些不同的,于习惯上会有些出入,在这里记下遇到的要点. 1.将第一个ViewController用设置成NavigationController属性 一般新建一个工程时,会自带一个ViewController的类,storyboard中也会有一个现成的视图与其绑定在一起,与以往不同的是,在AppDelegate中已经没有直接将该视图控制器设为根视图的代码了,这时如果想要将这个视图控制器设置成一个NavigationControlle

python学习第一课要点记录

写在要点之前的一段话,留给将来的自己:第一次参加编程的培训班,很兴奋很激动,之前都是自己在网上找免费的视频来看,然后跟着写一些课程中的代码,都是照着模子写,没有自己过多的思考.感觉这样学不好,除了多写以外,还得自己思考,经过了自己思考的源码,才能真正成为自己的东西.在上课前,班主任就让我们自己想一下,通过这个培训,要达到的目标.其实我的目标很简单,不求通过这个培训班能成为什么开发工程师,年薪百万,达到人生巅峰,赢取白富美.那个不现实,我只求能够在现在实际工作中(我的工作主要是网络运维,还兼有系统

GeekBand-第三周课程要点记录

做课程大纲性质的记录,根据大纲思考,有扩展阅读补充 1.考虑类之间能有什么样的联系和关系:组合,委托,继承 2.组合:包含其他类的对象 委托:包含其他类的指针 继承:包含并扩展,大部分是公有继承,is-a 3.虚函数:非虚函数,虚函数(virtual),纯虚函数(virtual.函数后边=0) 3.1 虚函数:C++的虚函数主要作用是“运行时多态”,父类中提供虚函数的实现,为子类提供默认的函数实现.子类可以重写父类的虚函数实现子类的特殊化. 3.2 纯虚函数:C++中包含纯虚函数的类,被称为是“

《C++程序设计》的要点记录

20170723修改:Markdown对代码和表格的兼容性不好,改成TinyMCE编辑的格式了,这样看起来没那么别扭了! 前言 第一次写博客,也是第一次用markdown写博客,觉得会比较有意思吧!能够长期坚持写博客应该是个很优秀的习惯,作为小白,希望自己能够踏踏实实一步一个脚印的记录自己所学的东西.第一篇写的是谭克强老师的<C++程序设计>的读书笔记,主要记录该书中的一些知识点,由于该书将的内容比较局限和浅显,但是还是适合我这个非专业编程人员看,算给自己入个门和打个C++基础,下一步就好好啃

线程池的要点分析

1.考虑建立线程数量 2.线程池的状态 with open('flog') as f: f.write() 3.关闭线程 实例(简单实例) 原理: 1:创建10个线程对象2:queue队列拿取线程.可用:拿:否则:等待3:线程执行完毕,归还给线程池 #!/usr/bin/env python # coding:utf-8 import Queue import threading """ 1:创建10个线程对象 2:queue队列拿取线程.可用:拿:否则:等待 3:线程执行完