CunZhang Posted September 18, 2025 Report Posted September 18, 2025 This toolkit offer you an efficient, stable, and reliable front panel control value refresh function. User can design their UI dashboard without any code development. 1. Powerful parallel execution capability, Support clone reentrant execution running mode, you can create multi dashboard UIs at the same time and controls can synchronous refresh across different UI. 2. High-speed data refresh capability, even with thousands of controls on a single UI, can easily maintain a refresh rate of 50ms while consuming very little CPU resources. 3. Support all control data types that "Tag Engine" support, this mean the only thing you need to do is to change the control "Label" with "Tag name", then the control will refresh automatically. 4. Support "muParser Expression", you can type the control "Label" with "Expression" that muParser Expression support, For example "a + b" "a > 1 & b >= 2". 1 Quote
Rolf Kalbermatter Posted September 19, 2025 Report Posted September 19, 2025 You may also want tell people where you can actually download or at least buy this. Although if you want to sell it, do not expect to many reactions. It is already hard to get people to use such toolkits when you offer them for free download. 1 Quote
CunZhang Posted September 20, 2025 Author Report Posted September 20, 2025 17 hours ago, Rolf Kalbermatter said: You may also want tell people where you can actually download or at least buy this. Although if you want to sell it, do not expect to many reactions. It is already hard to get people to use such toolkits when you offer them for free download. Good suggestion, But so much documentation need to prepare, I'm trying my best. Will post the download link here if everything done. Quote
tylerwindy Posted September 30, 2025 Report Posted September 30, 2025 我非常的期待,并且如果需要的话我愿意一起去完善,我正在为大量Ui控件的快速刷新感到苦恼 Quote
hooovahh Posted September 30, 2025 Report Posted September 30, 2025 Very neat looking. I like the concept. I do think people might not like the unprotected nature of being able to read and write to tags from anywhere. Imagine I have a sensor that keeps flipping back to NaN. I suspect trouble shooting where the tag is getting written from, or debugging this type of wireless program can be a challenge. If tools are made for tracking this type of thing it might make it easier. This also would make something like dynamic UIs easier. You can have a set of controls that can be inserted into subpanels, and then to read/write data you just need the controls named something specific. Oh that gets me thinking, can the tag be based on the Caption of the control not the label? That way it can change at runtime. Also I think the video should have been a youtube link. Watching such a long gif is a weird experience without pause, or playback controls. Quote
CunZhang Posted October 7, 2025 Author Report Posted October 7, 2025 On 9/30/2025 at 7:43 PM, hooovahh said: Very neat looking. I like the concept. I do think people might not like the unprotected nature of being able to read and write to tags from anywhere. Imagine I have a sensor that keeps flipping back to NaN. I suspect trouble shooting where the tag is getting written from, or debugging this type of wireless program can be a challenge. If tools are made for tracking this type of thing it might make it easier. This also would make something like dynamic UIs easier. You can have a set of controls that can be inserted into subpanels, and then to read/write data you just need the controls named something specific. Oh that gets me thinking, can the tag be based on the Caption of the control not the label? That way it can change at runtime. Also I think the video should have been a youtube link. Watching such a long gif is a weird experience without pause, or playback controls. Good idea, here are vidio links, and this toolkit will be uploaded to VIPM soon. YouTube video: https://www.youtube.com/watch?v=18rNEuNJJks Bilibili video: https://www.bilibili.com/video/BV1EexEzAEW PS: I had add a enum to choose "Label" or "Caption" Quote
CunZhang Posted October 7, 2025 Author Report Posted October 7, 2025 On 9/30/2025 at 4:02 PM, tylerwindy said: 我非常的期待,并且如果需要的话我愿意一起去完善,我正在为大量Ui控件的快速刷新感到苦恼 感谢你的关注,我正在准备将这个工具上传到VIPM上,不久将可以下载使用。 Quote
ShaunR Posted October 7, 2025 Report Posted October 7, 2025 On 9/30/2025 at 12:43 PM, hooovahh said: can the tag be based on the Caption of the control not the label? That way it can change at runtime Just be aware that the Caption property is often used for translations. Quote
hooovahh Posted October 7, 2025 Report Posted October 7, 2025 11 hours ago, ShaunR said: Just be aware that the Caption property is often used for translations. Oh yes great point. I've always been in the world of English applications, but a Label would probably be a safer choice. I'm just thinking about situations where at runtime connecting to things could be changed for a more dynamic UI. It has been done before different ways of course. Quote
Rolf Kalbermatter Posted October 13, 2025 Report Posted October 13, 2025 On 10/7/2025 at 9:46 PM, hooovahh said: Oh yes great point. I've always been in the world of English applications, but a Label would probably be a safer choice. I'm just thinking about situations where at runtime connecting to things could be changed for a more dynamic UI. It has been done before different ways of course. LabVIEW DSC does this with an internal tag name in the Control and the according configuration dialog allows to configure that tag name. Quote
Porter Posted 52 minutes ago Report Posted 52 minutes ago I'm a bit late to the party, but this is a great use of the Tag Engine and muParser. Use cases like this were exactly what I had in mind when I released those libraries. I've also been asked several times about implementing something similar. One suggestion would be to always use labels rather than captions. Personally, I would never consider using captions for this purpose. I would also introduce a flag character, such as @, as the first character of the label to indicate that the control's value should be updated automatically. Another improvement would be to allow the user to specify whether a control should be updated on a tag value change event or on a periodic interval. For periodic updates, I'd have the control values refresh every X milliseconds (user-configurable), with the timer reset whenever a control value change event occurs. Perhaps the second character of the label could be used to indicate this option, with periodic updates as the default behavior. Why update periodically? In many systems, data arrives much faster than it needs to be displayed on the UI, so periodic updates can reduce unnecessary processing. I would also avoid writing directly to tag values. Instead, I would use a Tag SetRequest event. In my view, the UI should not write directly to tag values. Hmm... maybe use the third character of the label to decide this? Looks like maybe all of these flags need to be contained within some brackets. Parsing labels as expressions is a nice idea. It had never occurred to me to do that. My usual mindset is that if a value is important enough to be displayed on the UI, it should already exist as a tag. Anyway, all this to say. Thanks for sharing what you have done. Nice video. And it would be great if you could share the source code so that everyone can try it out and learn from it. And maybe even improve it. Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.