1.面板(Panel)
类似于群组框(GroupBox),可以放置多个控件,通过滚动条(scroll)控制;
重要属性:
- AutoScroll:是否自动显示滚动条
- BackgroundImage:调整背景图
2.程序示例:
做一个虚拟键盘输入密码:
namespace _55_面板
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void label1_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "1";
}
private void label2_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "2";
}
private void label3_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "3";
}
private void label4_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "4";
}
private void label5_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "5";
}
private void label10_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "6";
}
private void label7_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "7";
}
private void label8_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "8";
}
private void label9_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "9";
}
private void label0_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "0";
}
private void labelQ_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "Q";
}
private void labelW_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "W";
}
private void labelE_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "E";
}
private void labelR_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "R";
}
private void labelT_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "T";
}
private void labelY_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "Y";
}
private void labelU_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "U";
}
private void labelI_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "I";
}
private void labelO_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "O";
}
private void labelP_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "P";
}
private void labelA_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "A";
}
private void labelS_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "S";
}
private void labelD_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "D";
}
private void labelF_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "F";
}
private void labelG_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "G";
}
private void labelH_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "H";
}
private void labelJ_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "J";
}
private void labelK_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "K";
}
private void labelL_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "L";
}
private void labelZ_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "Z";
}
private void labelX_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "X";
}
private void labelC_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "C";
}
private void labelV_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "V";
}
private void labelB_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "B";
}
private void labelN_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "N";
}
private void labelM_Click(object sender, EventArgs e)
{
textBoxdisplay.Text += "M";
}
private void labelBackspace_Click(object sender, EventArgs e)
{
textBoxdisplay.Text = textBoxdisplay.Text.Substring(0, textBoxdisplay.Text.Length - 1);//截取第一个字母到倒数第二个字母
}
private void labelConfirm_Click(object sender, EventArgs e)
{
if(textBoxdisplay.Text=="5201314")
{
MessageBox.Show("The password is correct!");
}
else
{
MessageBox.Show("Please confirm and try again!");
}
}
}
}
运行结果:
3.可视化编程的控件布局代码
举例:
private Panel paneldisplay;
其中>Panel<表示一个类;paneldisplay是类的对象的引用。
paneldisplay = new Panel();
为对象的构造函数。
// paneldisplay
//
paneldisplay.BackgroundImage = (Image)resources.GetObject("paneldisplay.BackgroundImage");
paneldisplay.Controls.Add(labelConfirm);
paneldisplay.Controls.Add(textBoxdisplay);
paneldisplay.Location = new Point(3, 12);
paneldisplay.Name = "paneldisplay";
paneldisplay.Size = new Size(276, 271);
paneldisplay.TabIndex = 0;
为控件布局程序。