[netMarketing类库] userUI的控件:应用程序容器,信号灯, 圆形多彩按钮,IO输入组合控件, IO灯


应用程序容器, 信号灯, 圆形多彩按钮,IO输入组合控件, IO灯

它们对应工具箱的控件如下:


image.png


AppContainer  是第三方应用程序容器

    用于把第三方程序显示嵌入进来


CircularButton  圆形多彩按钮


Infobox  信息框

    可以用来显示设备状态或者log信息


Signal   圆形或者方形信号灯

   可以做信号灯,做为组态显示用,例如组合出红绿灯


SignalButton   按钮+信号灯组合

    一般用它做IO调用面板的项目


SignalButtonSet   按钮+信号灯+文本框组合

    一般用它做IO调用面板的项目,因为它带有io编号的文本框



IOlight    IO灯


image.png

AppContainer的演示


先对属性AppFilename赋值,它是外部程序名的全路径。

然后调用Start()和Stop() 方法

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            appContainer1.AppFilename = "c:\\Windows\\notepad.exe";
        }

        private void circularButton1_Click(object sender, EventArgs e)
        {
            appContainer1.Start();
        }

        private void circularButton2_Click(object sender, EventArgs e)
        {
            appContainer1.Stop();
        }
    }
}



image.png

Infobox的演示


此控件基料是富文本编辑框richtextbox

此控件支持多线程显示。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void circularButton1_Click(object sender, EventArgs e)
        {
            Task.Factory.StartNew(() =>
            {
                for (int i = 0; i < 10; i++)
                {
                    infoBox1.Invoke(new Action(() =>
                    {
                        infoBox1.AddText("green", Color.Green);
                    }));
                  
                }
            });

            Task.Factory.StartNew(() =>
            {
              
                for (int i = 0; i < 10; i++)
                {
                    infoBox1.Invoke(new Action(() =>
                    {
                        infoBox1.AddText("red", Color.Red);
                    }));
                }
            });
            
            infoBox1.AddText("yellow", Color.Yellow);
        }
    }
}



image.png

Signal  

SignalButton  

SignalButtonSet

IOlight

的演示



using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void circularButton1_Click(object sender, EventArgs e)
        {
            MessageBox.Show(signalButtonSet1.IDNumber.ToString());
        }

        private void signal1_MouseHover(object sender, EventArgs e)
        {
            signal1.IsOn = true;
            signal1.IsRectangle = false;
        }

        private void signal1_MouseLeave(object sender, EventArgs e)
        {
            signal1.IsOn = false;
            signal1.IsRectangle = true;
        }

        int js1 =-1;
        private void iOlight1_MouseDown(object sender, MouseEventArgs e)
        {
            ++js1;
            if (js1 == 0)
            {
                iOlight1.setLightStatus(UserUI.industrialControl.IOlight.lightStatusEnum.低电平);
            }
            else if (js1==1)
            {
                iOlight1.setLightStatus(UserUI.industrialControl.IOlight.lightStatusEnum.高电平);
            }
            else if (js1 == 2)
            {
                iOlight1.setLightStatus(UserUI.industrialControl.IOlight.lightStatusEnum.无效);
                js1 = -1;
            }

        }

        private void signalButton1_UI_Click(object sender, EventArgs e)
        {
            if (signalButton1.IsOn)
            {
                signalButton1.IsOn = false;
            }
            else
            {
                signalButton1.IsOn = true;
            }
        }

        private void signalButtonSet1_UI_Click(object sender, EventArgs e)
        {
            if (signalButtonSet1.IsOn)
            {
                signalButtonSet1.IsOn = false;
            }
            else
            {
                signalButtonSet1.IsOn = true;
            }
        }

        private void Form1_Load(object sender, EventArgs e)
        {

        }
    }
}




本文视频讲解如下:






--------------------- 

作者:hackpig
来源:
www.skcircle.com
版权声明:本文为博主原创文章,转载请附上博文链接!



本文出自勇哥的网站《少有人走的路》wwww.skcircle.com,转载请注明出处!讨论可扫码加群:

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

会员中心
搜索
«    2024年4月    »
1234567
891011121314
15161718192021
22232425262728
2930
网站分类
标签列表
最新留言
    热门文章 | 热评文章 | 随机文章
文章归档
友情链接
  • 订阅本站的 RSS 2.0 新闻聚合
  • 扫描加本站机器视觉QQ群,验证答案为:halcon勇哥的机器视觉
  • 点击查阅微信群二维码
  • 扫描加勇哥的非标自动化群,验证答案:C#/C++/VB勇哥的非标自动化群
  • 扫描加站长微信:站长微信:abc496103864
  • 扫描加站长QQ:
  • 扫描赞赏本站:
  • 留言板:

Powered By Z-BlogPHP 1.7.2

Copyright Your skcircle.com Rights Reserved.

鄂ICP备18008319号


站长QQ:496103864 微信:abc496103864