一、界面管理
1.总效果图
首先添加组件PictureBox和Label。
PictureBox属性进行设置,如图
Label的属性也可进行设置,可自动变化大小,文字居中
在添加一个Label,作为用户登录后的提示:
解:
1.所有的PictrueBox和Label在初始状态的Visible属性都为false,只有在接受了相应权限值后才将其Visible属性修改为true。
2.将整个窗体的IsMdiContainer,属性何为true,个人的理解为允许当前窗口作为容器,将其它界面载入其中
二、代码部分
//定义窗体的形参
Form frm;
//定义形参接受从登录界面传递的值
string name;
int role;
//构造方法
public Form1(string name, int role)
{
this.name = name;
this.role = role;
InitializeComponent();
}
//对之前设置的Label组件进行赋值 值为从登录界面传递的用户名
l_name.Text = "操作员: "+name;
//对用户权限进行判断并实例化相应的窗口
if (role == 0 || role == 1)
{
//当权限值为0或1时 让原来隐藏的Picture和Combox显示
p1.Visible = true;
cbgl.Visible = true;
frm = new Frmcbgl();
myshow();
}
if (role == 0 || role == 2)
{
p2.Visible = true;
lpgl.Visible = true;
frm = new Frmlpgl();
myshow();
}
if (role == 0 || role == 3)
{
p3.Visible = true;
sjgl.Visible = true;
frm = new Frmsjgl();
myshow();
}
//对加载进来的其它窗体进行属性设置
public void myshow() {
frm.MdiParent = this;
frm.Dock = DockStyle.Fill;
frm.FormBorderStyle = FormBorderStyle.None;
frm.Show();
}
//下边的Label标签的点击事件主要为超级管理员的作用
//超级管理员的登录可以看到所有的板块 所以存在点击后切换的功能
private void lpgl_Click(object sender, EventArgs e)
{
frm = new Frmlpgl();
myshow();
//点击 nanme值为:lpgl 即 理赔管理
//点击后当前的文字前景色为红色而其它为黑色 另外两个点击事件同理
lpgl.ForeColor = Color.Crimson;
cbgl.ForeColor = Color.Black;
sjgl.ForeColor = Color.Black;
}
private void cbgl_Click(object sender, EventArgs e)
{
frm = new Frmcbgl();
myshow();
cbgl.ForeColor = Color.Crimson;
lpgl.ForeColor = Color.Black;
sjgl.ForeColor = Color.Black;
}
private void sjgl_Click(object sender, EventArgs e)
{
frm = new Frmsjgl();
myshow();
sjgl.ForeColor = Color.Crimson;
lpgl.ForeColor = Color.Black;
cbgl.ForeColor = Color.Black;
}