如何在C#Windows Forms中翻转/旋转标签?
我将背景图片设置为我的标签。
在每个时间间隔,它将三个像素移动到右侧。当它到达表格结束位置时,我需要翻转并转回标签。
我尝试了以下方法,但我没有得到解决方案。
private void timer1_Tick(object sender, EventArgs e){
if (label2.Location.X < this.Width)
label2.Location = new Point(label2.Location.X + incr, label2.Location.Y);
else
{
incr = -2;
label2.Location = new Point(label2.Location.X - 50, label2.Location.Y);
label1.Image.RotateFlip();
}
this.Refresh();
}
答案 0 :(得分:7)
创建一个类newlabel
,可以在用户指定的任何角度旋转其文本。
extend label class& override paint method
您可以通过代码使用它或只是从ToolBox拖动。
using System.Drawing;
class newLabel : System.Windows.Forms.Label
{
public int RotateAngle { get; set; }
public string NewText { get; set; }
protected override void OnPaint(System.Windows.Forms.PaintEventArgs e)
{
Brush b =new SolidBrush(this.ForeColor);
e.Graphics.TranslateTransform(this.Width / 2, this.Height / 2);
e.Graphics.RotateTransform(this.RotateAngle);
e.Graphics.DrawString(this.NewText, this.Font,b , 0f, 0f);
base.OnPaint(e);
}
}
现在将此自定义控件拖放到表单中。
您必须设置以下属性。
newlbl.Text = "";
newlbl.AutoSize = false;
newlbl.NewText = "ravindra";
newlbl.ForeColor = Color.Green;
newlbl.RotateAngle = -90;
只需更改RotateAngle
属性即可根据需要更改角度。
答案 1 :(得分:0)
所以......你可以这样做:
1.下载此dll文件:http://www.mediafire.com/download/hc16qezty0k6qnv/RotateLabel.dll
2.转到Visual Studio并打开解决方案
3.现在你需要进入项目标签 - &gt;添加引用... - &gt;然后浏览 您下载的文件,只需添加该文件
4.接下来的步骤是右键单击ToolBox
5.完成后,您需要点击选择项目
6.浏览下载的文件并添加VerticalLabel
7.然后,您可以将VerticalLabel从“工具箱”拖动到表单。
就是这样,它很简单。
希望能帮助你,我刚刚翻译了这个answer并使其变得更简单:)
祝你好运, Stralz