您的位置:首页 > 汽车 > 时评 > 江苏苏州昨天出大事_东莞人才市场在哪里_引流推广网站平台_原版百度

江苏苏州昨天出大事_东莞人才市场在哪里_引流推广网站平台_原版百度

2024/12/23 12:27:00 来源:https://blog.csdn.net/qq_36865346/article/details/144000101  浏览:    关键词:江苏苏州昨天出大事_东莞人才市场在哪里_引流推广网站平台_原版百度
江苏苏州昨天出大事_东莞人才市场在哪里_引流推广网站平台_原版百度

一、实物硬件表拟定

笔记本电脑、正运动控制器、三个汇川伺服驱动器、三个滑动模组

二、软件开发

注意细节:

①主界面使用三个panel容器进行构建

pannel容器设置属性参数:(1) dock 

② 添加自定义控件:首先创建类库,删除默认文件后,增加自定义控件;同时在自定义控件中进行增加属性,以便在主窗体中直接修改自定义属性;添加图片资源方式:属性->添加现有文件

快捷方式:propfull->直接创字段和对应的属性

1. 创建winform窗体程序

1.1.窗体参数设置如下:

①  修改窗体size属性,设置为1366,760

②  修改formbodystyle属性,选择none,即“无边框”

1.2.插入三个panel容器:

①  菜单panel:size属性设置为1366,80;dock属性设置为top;backcolor属性设置为blue;

其中dock属性可以控制 控件布局位置

② 显示panel:size属性设置为1366,640;dock属性设置为fill;

③ 底部panel:size属性设置为13866,40;dock属性设置为buttom,backcolor属性设置为blue;

以上窗体参数设置好以后,如图所示:

2. 创建自定义用户控件(方便后期项目直接进行调用)

2.1. 创建自定义控件

① 解决方案->新建类库, 在新建的类库文件下创建自定义控件

2.2. 创建资源图像文件夹

在classliabrary项目下创建“resource”文件夹,同时在该文件下存放一张图像,并点击生成项目

2.3. 添加label和picturebox控件

在自定义控件上添加一个picturebox控件和label控件(图像位于自定义控件的上部分,label位于自定义控件的下部分),并选择resource文件夹中添加的图像

2.4.给自定义属性添加属性参数

① 增加“自定义控件名字”和“自定义控件图像”两个属性参数

        private string buttonname="主界面";public string Buttonname{get { return buttonname; }set { buttonname = value;this.label1.Text = buttonname;
}}private Image image=Properties.Resources._1_removebg_preview;public Image backimage{get { return image; }set { image = value;this.pictureBox1.Image = backimage;}}

 添加完成属性程序以后,点击项目生成;当在其他界面插入自定义控件时,其对应的“backimage”和"buttonname"属性会出现控件属性列表中

 

② 增加控件是否被激活属性

通过isactive属性来控制自定义控件显示的状态,如果自定应控件的isactive属性修改,都会触发onpaiter函数,对控件显示进行重写绘制;目前指定的规则是当isactive属性被设置为true,则自定义属性底部被画上一个白色矩形

private bool isbutactive;[Browsable(true)][Category("自定义属性")][Description("激活按钮")]public bool Isbutactive{get { return isbutactive; }set {isbutactive = value;this.Invalidate();}}private Color activeColor = Color.FromArgb(137, 207, 240);[Browsable(true)][Category("自定义属性")][Description("激活方块颜色")]public Color ActiveColor{get { return activeColor; }set{activeColor = value;this.Invalidate();}}private int activeHeight = 4;[Browsable(true)][Category("自定义属性")][Description("激活方块高度")]public int ActiveHeight{get { return activeHeight; }set{activeHeight = value;this.Invalidate();}}private int activeGap = 0;[Browsable(true)][Category("自定义属性")][Description("激活方块边距")]public int ActiveGap{get { return activeGap; }set{activeGap = value;this.Invalidate();}}protected override void OnPaint(PaintEventArgs e){base.OnPaint(e);Graphics graphics = e.Graphics;Rectangle rectangle = new Rectangle(activeGap, this.Height - activeHeight, this.Width - 2 * activeGap, activeHeight);graphics.FillRectangle(isbutactive ? new SolidBrush(this.activeColor) : new SolidBrush(this.BackColor), rectangle);}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com