В приложении C # WinForm у меня есть элемент управления Label
, и я хочу переместить его текст справа налево, когда текст не соответствует размеру.
Я заставил мой текст скользить справа налево, используя Timer
, но он не двигается плавно, потому что я думаю, что ширина каждого алфавита отличается (например, ширина i
намного меньше, чем w
, и т. Д. .) Это выглядит очень плохо, и я прикрепил gif ниже, чтобы вы увидели. Там написано Почему этот текст не будет плавно двигаться? Как видите, его очень трудно читать, потому что он иногда сильно, а иногда немного.
Ширина и высота элемента управления Label
фиксированы и не подлежат изменению.
Вот мой код:
/* Timer event to move the text from right to left. */
/* The name of the Label control is myLabel. */
private void MoveLabelText_Tick(object sender, EventArgs e)
{
this.myLabel.Text = this.myLabel.Text.Substring(1, this.myLabel.Text.Length - 1) + this.myLabel.Text.Substring(0, 1);
}
Может кто-нибудь дать мне совет, что я могу сделать, чтобы это исправить?
Или есть ли другой способ, кроме использования таймера, если это проще?