c#窗体,线程触发

问题描述

我在写C#程序时遇到这样一个问题,求高手指点,首先有三个窗体,Form1为主窗体,Form2和Form3都是它的子窗体,Form1中有一个线程的触发事件,form2是串口获取的窗体,form3是接受Form1种线程里面数据的窗体,我要实现,通过Form1打开Form2,Form2打开Form3,触发form1的线程触发事件,form3中接受到值,能用什么样的办法,能在子窗体触发线程啊?

解决方案

解决方案二:
子窗体触发Form1的线程?..直接把form1传过去--不过..我不建议你这样用线程--,容易乱..最好把线程单独提出来使用..
解决方案三:
新手要从需求出发,不要靠拍脑袋想方案
解决方案四:
不要老纠结什么高大上的又是事件又是委托的其实很多时候你需要的那点功能用最基本的写法都能搞定
解决方案五:
form1传过来?能详细点吗
解决方案六:
定义一个类,在类中定义变量,在触发form1的时候给这个类的变量赋值,在from3中直接调用这个变量就好了

时间: 2024-10-27 01:24:58

c#窗体,线程触发的相关文章

c#-C#中利用线程触发button事件后,是否可在button 中Abort线程?

问题描述 C#中利用线程触发button事件后,是否可在button 中Abort线程? C#中利用线程触发button事件后,是否可在button 中Abort线程? 解决方案 可以是可以,但是这样做容易造成意想不到的情况,比如资源泄露或者文件写入错误或者崩溃. 最好让线程自己退出. 解决方案二: btn 中应该定义的是执行的方法,你用线程 执行方法就行了,干嘛 非得通过 btn事件来执行方法? 解决方案三: 一般不会这样去结束一个线程,通常的做法是线程里面加一个循环,循环条件设置为Flag,

activex嵌入浏览器时线程触发事件

  8 推荐 在浏览器中嵌入activex后,线程中触发的事件就没有动静了,如果在调试的情况下,还能发现浏览器有非法错发生.而同样的activex如果使用应用程序来调用则正常. 解决方法是取巧的方式,在线程中发出消息,控件响应消息后再FireEvent. 1. 创建控件项目. 2. 类向导, 使用 Add 方法将启动二线程并返回. 下面的代码显示方法启动二线程并立即返回 MFCActiveX 控件中. 全局函数以作为二线程工作函数还声明: LONG ThreadProc(LPVOID pPara

C#钩子本线程内消息拦截

钩子其实就是调用一下API而已: 1.安装钩子: SetWindowsHookEx 函数原形:HHOOK SetWindowsHookEx( int idHook, // 钩子类型, HOOKPROC lpfn, // 钩子函数地址 INSTANCE hMod, // 钩子所在的实例的句柄, DWORD dwThreadId // 钩子所监视的线程的线程号 ) hMod: 对于线程序钩子,参数传NULL: 对于系统钩子:参数为钩子DLL的句柄 dwThreadId:对于全局钩子,该参数为NULL

C# 线程无法开启窗口的原因

在 C# 里面, 主窗口拥有主线程, 主线程产生子线程监控 Socket 埠, 子线程一收到数据流就会给主线程发送一个事件, 创建一个窗口. 现在的情况是子线程能够收到数据流, 主窗口能够收到子线程发送过来的事件, 能够创建一个窗口. 这个窗口有问题: 窗口状态像死掉程序的窗口一样, 反白的.开发碰到很棘手的问题, 寻找解决方法. 品味程序出错过程, 逐步跟踪程序执行过程, 每一行代码每一条语句全部执行, 怪了, 大白天碰到鬼了. 主窗口加入一个按钮, 按钮的作用就是执行主窗口的事件, 启动程序

C#子线程的控件操作问题解析

有关C#子线程的控件操作 一般来说,直接在子线程中对窗体上的控件操作是会出现异常,这是由于子线 程和运行窗体的线程是不同的空间,因此想要在子线程来操作窗体上的控件,是 不可能简单的通过控件对象名来操作,但不是说不能进行操作,微软提供了 Invoke的方法,其作用就是让子线程告诉窗体线程来完成相应的控件操作. 现在用一个用线程控制的进程条来说明,大致的步骤如下: 1.创建Invoke函数,大致如下: /// < summary> /// Delegate function to be invok

阻塞-vb.net多线程造成窗体界面“假死”解决办法?

问题描述 vb.net多线程造成窗体界面"假死"解决办法? 我在一个窗体按钮单击事件里开了一个新线程用于连接一硬件设备,结果线程一start窗体就卡死了,造成窗体线程阻塞,我想知道时间片是如何分配的,默认优先级相同,为什新线程会独占时间片? 解决方案 我在编写MFC窗体程序时也测验过线程独占的情形,我猜想最可能的原因是:线程的开辟与管辖范围与主线程相干.

c#,winform,为防止界面卡死,新建线程运行耗时算法,速度骤降

问题描述 c#,winform,为防止界面卡死,新建线程运行耗时算法,速度骤降 原本单线程下3分钟,创建个线程这么做之后要35分钟,各位大哥大姐行行好,告诉我这个怎么破? //齐套分析按钮事件 private void btnQtfx_Click(object sender, EventArgs e) { qtfxStart(); //启动进度条 if (gridView1.RowCount > 0) { int[] selected = this.gridView1.GetSelectedRo

C#线程调用带参数的方法

在 .NET Framework 2.0 版中,要实现线程调用带参数的方法有两种办法. 第一种:使用ParameterizedThreadStart. 调用 System.Threading.Thread.Start(System.Object) 重载方法时将包含数据的对象传递给线程. 使用 ParameterizedThreadStart 委托不是传递数据的类型安全的方法,因为 System.Threading.Thread.Start(System.Object) 方法重载接受任何对象. 这

iOS多线程编程:线程同步总结 NSCondtion

问题描述 本帖最后由 jodies 于 2015-2-2 14:33 编辑 1:原子操作 - OSAtomic系列函数iOS平台下的原子操作函数都以OSAtomic开头,使用时需要包含头文件.不同线程如果通过原子操作函数对同一变量进行操作,可以保证一个线程的操作不会影响到其他线程内对此变量的操作,因为这些操作都是原子式的.因为原子操作只能对内置类型进行操作,所以原子操作能够同步的线程只能位于同一个进程的地址空间内.**2:锁 - NSLock系列对象**iOS平台下的锁对象为NSLock对象,进