问题标签 [toolstripstatuslabel]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
842 浏览

c# - 在 ToolStripStatusLabel 对象上设置光标类型

StatusStrip的表单底部有一个对象,其中ToolStripStatusLabel添加了一个对象。我想更改鼠标悬停在鼠标光标上时显示的类型。

我怎样才能做到这一点?

0 投票
5 回答
7930 浏览

c# - 立即更新 toolStripStatusLabel

我有一个 WinForms 程序,其中包含 a 、buttonastatusStrip和 a toolStripStatusLabelstatusStrip如果我单击按钮并运行:

然后toolStripStatusLabel' 的文本直到线程完成睡眠后才会更新。如何让它立即更新,然后让线程休眠?

0 投票
1 回答
871 浏览

c# - C# 工具条的进度条和标签未从跨线程操作中更新

由于某种原因,ToolStrip 的 ProgressBar 和 Label 没有从其他线程更新。经过大量阅读后,我想出了这个,但仍然无法正常工作(按钮还可以,但不在状态栏上)。

已编辑,现在所有功能,但这只是来自 BGW 线程的回调,我认为这已经很明显了。如果我只使用它:

将抛出跨线程错误。所以这就是我使用 Invoke() 的原因。现在按钮可以更新,但状态栏中的所有控件都不能更新。

希望现在更加清晰。

我使用 .NET 3.5、VS2008、Winforms。有什么解决办法吗?

0 投票
2 回答
387 浏览

c# - 在关闭表单的线程中更新 Toolstripstatuslabel

我有一个订单。订单完成后,我使用线程将订单通过电子邮件发送给供应商。Thread 用于防止订单导出为 pdf 并发送时系统挂起。

问题:一旦威胁完成且没有错误,我想在 MDIParent Toolstripstatuslabel 上放置一条消息,以确认订单已发送。但我收到一个错误:“System.NullReferenceException:对象引用未设置为对象的实例”。我可能错了,指的是子窗口在关闭时在父窗体上设置了工具条状态标签引用,因此威胁无法再访问它。我知道简单的解决方案是使用 MessageBox 来确认一切顺利......但是如果你能做到优雅,为什么要让它变得简单呢?

所以我的问题是:如何从威胁中引用父表单中的控件?我尝试查看调用,但不确定如何实现它或者它是否实际上是正确的方向。

编辑:

我来自 childform 的代码

编辑:

好的,所以在花了一天多的时间试图弄清楚如何使用 Invoke 之后,我意识到虽然在使用线程时这似乎是一种很好的做法,但这不是我的答案。我的问题与关闭处理所有控件的子窗体直接相关,因此它失去了对 MdiParent 的引用。为了解决这个问题,我做了以下事情:

在我的子班中,我添加了:

我不认为这是最优雅的解决方案,但理论上是,当我需要访问 Toolstripstatuslabel 时,我的 Parent 表单将始终处于打开状态。所以我基本上遍历所有打开的表单以找到对活动 MdiParent 实例的引用,然后将其传递回调用者。然后在线程中使用以下代码。

我仍在寻找更好的方法,但现在这可行。

0 投票
1 回答
99 浏览

c# - 工具条状态标签等于 (=) 字符

我在使用 C# 开发的标准 ToolStripStatusLabel 时遇到了一些奇怪的行为。如果我输入像“Hello World”这样的普通文本,一切都可以正常工作:

在此处输入图像描述

如果在末尾放一个 Equal 字符,再加上一些与单词不同的其他内容,例如 ("Hello World=--"),我就有了。

在此处输入图像描述

从我所做的测试来看,就像 ToolStripLabel 进行某种正则表达式解析或类似的东西,但我没有找到任何文档或证据。II 将等号放在中间(如“Hello=World”)它工作正常,并准确打印该字符串。

这很奇怪,因为我打算写坐标(比如 X=352,Y=43)但是在绘画区域之外,打印一些像 X=--,Y=--...

代码示例:

0 投票
1 回答
24 浏览

c# - 由于数据表中的数据量,停止 ToolStripStatusLabel 闪烁

我有一个实时加载数据的 ToolStripStatusLabel,有太多信息通过它变得不可读。

这有什么双缓冲功能吗?我尝试了以下方法: