线程处理时文本框不会更新

2023-12-09

这是名为“Blahing”的模块内的子代码:

    Sub BlahBlah(ByVal Count As Long)
        For i As Long = 0 To Count
            frmBlaher.txtBlah.Appendtext("Blah")
        Next
    End Sub

以下是名为 frmBlaher 的表单内的按钮单击事件代码:

     Private Sub WriteBlah_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles WriteBlah.Click
         Dim Thread As New Threading.Thread(Sub() Blahing.BlahBlah(Val(_
              TxtBlahCount.Text)))

         Thread.Start()
     End Sub

当我在 txtBlahCount 中输入任何数字(例如 10),然后按 WriteBlah 按钮时,没有任何反应。我设置了多个断点,发现“Appendtext”部分出现但不起作用。我检查了 txtBlah 的 Text_Changed 事件,它发生了,但唯一的问题是,我在 txtBlah 中没有看到任何文本。我是多线程新手。我之前读过这个问题的很多答案,但没有一个给出例子。你能帮忙吗?


运行你的代码有点不同,这就是 vb.net 中多线程的结构应该是什么样子(它与 Vb.net 不将命名空间传递到模型中有关,据我所知)

这将是您在加载中从主线程开始的线程,或者您有

Private Sub DoSomethingSimple()
    Dim DoSomethingSimple_Thread As New Thread(AddressOf DoSimple)
    DoSomethingSimple_Thread.Priority = ThreadPriority.AboveNormal
    DoSomethingSimple_Thread.Start(Me)
End Sub

这将是实际的线程本身(新模型/类或在同一个类中)

Private Sub DoSimple(beginform As Form)
    'Do whatever you are doing that has nothing to do with ui

    'For UI calls use the following
    SomethingInvoked(PassibleVariable, beginform)

End Sub

为每次调用主线程编写一个委托和调用方法。

Delegate Sub SomethingInvoked_Delegate(s As Integer, beginform As Form)
Sub SomethingInvoked_Invoke(ByVal s As Integer, beginform As Form)
    If beginform.NameOfControlYouAreUpdating.InvokeRequired Then ' change NameOfControlYouAreUpdating to the Name of Control on the form you wish to update
        Dim d As New SomethingInvoked_Delegate(AddressOf SomethingInvoked_Invoke)
        beginform.Invoke(d, New Object() {s, beginform})
    Else

        'Do something...
        beginform.NameOfControlYouAreUpdating.Condition = Parameter

    End If
End Sub

这是在 vb.net 中编写线程的测试(非挂起)方法

如果您需要进一步帮助将代码实现到此模板,请告诉我:P

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

线程处理时文本框不会更新 的相关文章

  • System.InvalidCastException:指定的强制转换无效

    使用 WatiN 的自动化正在进行中 使用几个并发线程来测试应用程序 很少有线程失败 日志报告 堆栈跟踪显示以下内容 System InvalidCastException Specified cast is not valid at SH
  • 为什么我的多螺纹嵌件比单螺纹嵌件性能更好?

    我调查了并发性 http docs mongodb org manual faq concurrency how granular are locks in mongodb在 MongoDB 中 显然它使用了数据库级锁定系统 我认为这意味着
  • INotifyPropertyChanged 和线程

    我有一个基类实现INotifyPropertyChanged protected void OnNotifyChanged string pName if PropertyChanged null PropertyChanged this
  • C:如果文件描述符被删除,阻塞读取应该返回

    我正在以阻塞的方式从设备 文件描述符中读取 可能会发生这样的情况 在不同的线程中 设备被关闭并且文件描述符被删除 不幸的是 读取没有返回或注意到并且一直阻塞 作为一种解决方法 我可以使用 select 作为超时来执行 while 循环 如果
  • 从另一个线程在主线程中运行代码

    在 android 服务中 我创建了线程来执行一些后台任务 我遇到一种情况 线程需要在主线程消息队列上发布某些任务 例如Runnable 有没有办法得到Handler主线程和帖子的Message Runnable从我的另一个线程到它 注意
  • 使用 volatile 关键字时出现内存一致性错误的示例?

    来自文档 使用易失性变量可以降低内存一致性错误的风险 但这是否意味着有时易失性变量无法正常工作 奇怪的是它的使用方式 在我看来 这是非常糟糕的代码 有时工作有时不工作 我尝试谷歌 但没有找到易失性内存一致性错误的示例 您能推荐一个吗 问题不
  • 如何在不同的QT线程中创建一个窗口?

    我有一个应用程序 其中每个线程 主线程除外 都需要创建自己的窗口 我尝试创建一个线程然后调用this gt exec in the run功能 然而 在我接到那个电话之前我就收到了一个错误 ASSERT failure in QWidget
  • 在 Linux 上创建线程与进程的开销

    我试图回答在 python 中创建线程与进程有多少开销的问题 我修改了类似问题的代码 该问题基本上运行一个带有两个线程的函数 然后运行带有两个进程的相同函数并报告时间 import time sys NUM RANGE 100000000
  • C++:Linux平台上的线程同步场景

    我正在为 Linux 平台实现多线程 C 程序 其中我需要类似于 WaitForMultipleObjects 的功能 在搜索解决方案时 我发现有一些文章描述了如何在 Linux 中实现 WaitForMultipleObjects 功能
  • 异步回调到BackgroundWorker

    我想使用 NET FTP 库 http netftp codeplex com http netftp codeplex com 该库提供 BeginOpenRead string AsyncCallback object 使用异步编程模型
  • 使用 WaitHandle.WaitAll 时是否可以对 ThreadPool 中的任务进行分组/隔离?

    我面临的情况如下 因为 ThreadPool 每个进程有 1 个实例 所以我的问题是方法 1 会在 3 秒后取消按方法 2 排队的任务 http请求进来 method 1 gets executed first ThreadPool Que
  • 如何让node.js中的线程休眠而不影响其他线程?

    As per 了解 Node js 事件循环 http blog mixu net 2011 02 01 understanding the node js event loop node js支持单线程模型 这意味着如果我向 Node j
  • 多线程调试技术

    我想知道是否有人知道多线程应用程序调试技术的一个很好的调查 理想情况下 我正在寻找基于案例的分析 死锁 饥饿 损坏的共享状态 Net 特定的或通用的 我不知道有哪篇文章或书籍可以满足您的需求 因此这是我从 12 年 Windows 多线程调
  • 完成任务时手动捕获并应用 SynchronizationContext

    我遇到了挂起等待的问题 已描述here https stackoverflow com questions 40992035 awaiting a task that is being completed on a background t
  • 从 Android 函数更新 Textview

    有人可以告诉我如何从函数更新 Android Textview 控件吗 我在互联网上进行了深入搜索 看到很多人都问同样的问题 我测试了线程但无法工作 有人有一个简单的工作示例吗 例如 调用一个函数 在循环中运行多次 并且该函数在 TextV
  • Android 中的处理程序到处理程序与 Messenger 到 Messenger 通信

    问题 使用起来是否 更好 更快且开销更少 Handler http developer android com reference android os Handler html与使用 Handler 通信相比信使 http develop
  • java:为什么主线程等待子线程完成

    我有一个简单的java程序 主线程 main 创建并启动另一个线程t class T extends Thread Override public void run while true System out println Inside
  • BufferBlock 连续

    我想使用以下方式实现消费者 生产者模式BufferBlock
  • 多线程 - 比单线程慢

    当我使用多个线程而不是单线程运行程序时 它会变慢 不是应该更快吗 该程序应该遍历从起始目录开始的所有目录 并查找并打印所有名为 X 的文件 代码如下 while done pthread mutex lock lock if list is
  • 如何阻止 Control-I 在 CoreWindow 范围内的 UWP 文本框中插入选项卡?

    当我在 UWP 应用程序中有一个 TextBox 时 对我来说 奇怪的行为 在 Windows 10 中创建通用的空白应用程序 UWP 应用程序 使用以下代码将文本框添加到默认网格

随机推荐

  • 更新到最新版本的 CocoaPods?

    我在安装时遇到一些问题Alamofire 4 0进入我的项目 我有最新版本的Xcode 跑步Swift 3 当我尝试安装 alamofire 时 我收到了 800 个编译器错误 显然 构建 Alamofire 4 0 0 需要 CocoaP
  • 更新 JProgressBar

    我无法更新我的进度条 这是我的代码 Thread t new Thread new Runnable public void run int i 1 jProgBar setMinimum 0 jProgBar setMaximum 100
  • for(;;) 是什么意思?

    我很困惑for 构造 我认为这是无限 for 循环的一种简写形式 但我不能确定 这是代码 for whatever statements Your guess is correct it s an infinite loop This is
  • 为什么此 Firestore 事务冻结?

    下面的简单代码冻结了 要重现 只需替换this firestoreProvider with admin initializeApp firestore console log Init the cat const kittyRef thi
  • 操作栏检测片段中的后退按钮单击

    我有一个片段 其中启用了操作栏后退按钮 Code Override public void onAttach Activity activity super onAttach activity setHasOptionsMenu true
  • 使用另一个java程序编译一个java程序

    我想制作一个java程序 从文件中读取另一个java程序 编译它并显示错误和警告 我还想显示从文件读取并编译的程序的输出 我怎样才能做到这一点 看一眼javax tools JavaCompiler 从程序调用 Java 编程语言编译器的接
  • 如果清单 v3 中不允许当前选项卡 url,则阻止弹出窗口

    我正在编写一个 chrome 扩展 我想完全禁用弹出窗口 或者在 v3 清单不允许当前选项卡的 url 时显示一条消息host permissions财产 这是一个开发支持工具 我们不希望为生产 URL 启用它 所以如果我设置 host p
  • 将内容放入 HttpResponseMessage 对象中?

    几个月前 微软决定更改 HttpResponseMessage 类 以前 您可以简单地将数据类型传递到构造函数中 然后使用该数据返回消息 但现在不行了 现在 您需要使用 Content 属性来设置消息的内容 问题是它是 HttpConten
  • 如何将十六进制序列毫无歧义地转换为汇编语言?

    8B EC 56 8B F4 68 00 70 40 00 FF 15 BC 82 40 像上面这样的序列可以通过多种方式进行分段 每个段都可以翻译为相应的汇编指令 但是每个二进制可执行文件都有其唯一的确定的汇编 避免歧义的数学原理是什么
  • 核心动画围绕任意点旋转图层

    如何使用核心动画围绕任意点旋转图层 在我的例子中 一个点不在我想要旋转的图层内部 我更喜欢在不更改锚点的情况下执行此操作 因为除非每次更改锚点时出现错误 否则它也会更改图层的位置 我尝试了类似的方法 但没有成功 UIImageView be
  • strtol 使用 errno

    我有以下代码 include
  • 方法 findViewById(int) 未定义

    我是 Android 开发新手 我正在尝试编写一个小应用程序 它允许我获取外部 JSON 文件并解析它 我让它工作了 但是如果我尝试在后台执行它 它就不会工作AsyncTask Eclipse 给我错误 对于 LongOperation 类
  • 如何清除tomcat中的PermGen space错误

    我在 Windows 环境中工作 每次使用 tomcat 时都会收到此错误 Apr 30 2012 5 30 37 PM org apache catalina core StandardWrapperValve invoke SEVERE
  • 在 Java 中读取奇怪的 unicode 字符?

    我有以下文本文件 文件以utf 8编码保存 我使用以下代码来读取文件的内容 FileReader fr new FileReader f txt BufferedReader br new BufferedReader fr String
  • Canvas for Node.js 在本地工作但不能在 Heroku 服务器上工作

    我正在使用帆布包对于 Node js 它在我的计算机上运行良好 但当我将其上传到我的 Heroku 服务器时 它不起作用 我所说的 工作正常 是指画布包已正确安装npm install canvasNode js 应用程序按预期工作 但是
  • JTable 不使用 CTRL 进行多选

    我正在尝试更改 JTable 的选择行为 以便能够在不使用 CTRL 修饰符的情况下向选择添加和删除行 方法 public void changeSelection int rowIndex int columnIndex boolean
  • 使用VBA从PPT中提取文本并将其粘贴到Excel中

    我需要从 PowerPoint 演示文稿中的文本框中提取数据 并将它们放入 Excel 工作表中的相应单元格中 我已经搜索过但找不到合适的解决方法 此代码用于打印幻灯片中的文本 我不明白如何在 Excel 单元格中排列它 Dim oPApp
  • 从 neo4j 中删除标签引用

    在从电子表格导入大量数据时 我尝试使用标签约定 其中节点大写 如 This 关系标签标记为 THIS 在一个例子中 我不小心对一组节点使用了关系标签格式 然后我删除了这些节点并使用正确的标签格式重新导入它们 附带问题 有没有办法重命名我没有
  • 地点详细信息 API 的短名称的更改

    Google 响应的格式是否发生变化 几天以来 当我使用与国家 地区对应的 place id 参数查询 API 时 我不再获得任何国家 地区代码 alpha2 例如 Query for France http maps googleapis
  • 线程处理时文本框不会更新

    这是名为 Blahing 的模块内的子代码 Sub BlahBlah ByVal Count As Long For i As Long 0 To Count frmBlaher txtBlah Appendtext Blah Next E