winform Label控件字体能否自动调整?
请问哥哥姐姐们,Label控件能不能在控件大小一定的情况下,根据要显示的字数多少来自动调整字体大小,防止文本显示不全?查了一会儿没找到。先谢谢大家了! winform
[解决办法]
滚动条!!!!
[解决办法]
需要你编程序处理
[解决办法]
要么就用Enable为False的TextBox伪装一个。。。。
[解决办法]
或者什么时候字数变了一起修改Font
private void button1_Click(object sender, EventArgs e)
{
if (this.label1.Text == "xxx")
{
this.label1.Text = "xxxx";
this.label1.Font = new Font("SimSun", 20);
}
else
{
this.label1.Text = "xxx";
this.label1.Font = new Font("SimSun", 30);
}
}
private float chang_text_size(string s, int width,int height)
{
float size=0f;
size = (float)((width * 1.2) / s.Length);//1.2是我自己测算出来的
if (size > height - 3) //3也是自己测算出来的
{
size = height - 3;
}
return size;
}
this.label1.Font = new System.Drawing.Font("宋体", chang_text_size(textBox1.Text, label1.Width, label1.Height), System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(128)));测试可以实现你要求的功能