Point p = new Point();
p.X = this.labelTitle.Location.X - 10;
p.Y = this.labelTitle.Location.Y;
if (p.X < this.Location.X)
p.X = this.Width;
this.labelTitle.Location = p;
this.timerTime.Interval = 200;
这一段代码功能不完善,标题会不见
在C#做音乐播放器的标题文字如何实现水平来回滚动
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
1条回答 默认 最新
你知我知皆知 2024-08-02 06:27关注以下回答参考 皆我百晓生、券券喵儿 等免费微信小程序相关内容作答,并由本人整理回复。
这段代码可以实现一个简单的标题文本水平滚动的效果。但是,在你的示例中,如果滚动到屏幕边缘,滚动后的标题文本可能会消失。为了修复这个问题,你可以使用
ScrollIntoView()方法来确保滚动后标题仍然可见。这是一个修改后的版本:
private void ScrollLabelTitle() { var labelTitleLocation = new Point(this.Location.X, this.Location.Y); if (labelTitleLocation.X > this.Width) { // 如果滚动到屏幕外,将其移动回屏幕内 labelTitleLocation = new Point(this.Width, this.Location.Y); } this.labelTitle.Location = labelTitleLocation; } private void timerTime_Tick(object sender, EventArgs e) { this.ScrollLabelTitle(); }现在,当滚动时,滚动后的标题应该能保持在屏幕上。
解决 无用评论 打赏 举报