c# 动态向panel中添加控件,并且水平滚动条自动向右滚动问题

芹菜学长 2017-06-22 08:58:45
现在我有一个panel控件,利用timer控件,一秒一次,我要向里面动态添加label 控件
间隔为80,到达一定数量的时候,panel会出现一个滚动条,水平滚动条。这个滚动条是一直在左边的。
现在我想实现,滚动条一直在水平的右侧,这样就能显示最新添加的label控件。
老师们,教教我,如何实现这样的功能。
...全文
736 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
threenewbee 2017-06-23
  • 打赏
  • 举报
回复
同样的问题,在ask,已经回答你了
芹菜学长 2017-06-23
  • 打赏
  • 举报
回复 1
引用 楼主 OldDirverHelpMe 的回复:
现在我有一个panel控件,利用timer控件,一秒一次,我要向里面动态添加label 控件 间隔为80,到达一定数量的时候,panel会出现一个滚动条,水平滚动条。这个滚动条是一直在左边的。 现在我想实现,滚动条一直在水平的右侧,这样就能显示最新添加的label控件。 老师们,教教我,如何实现这样的功能。
现在我已经实现,我想要的功能了,利用两行 #2 得分:0 回复于: 2017-06-23 02:25:59 我搜索了一下wm_scroll消息是什么。 http://blog.csdn.net/testcs_dn/article/details/42360547 这个中的代码的第106行的吗? 有没有简单粗暴点的方法,我把我的描述在说明清晰点。 第一秒产生如下所示的样子 第二秒产生如下所示的样子 第三秒的时候,第三个label超出了panel的显示范围 此时,panel会产生一个水平的滚动条: 所以想要的效果是这样的: 现在我写两遍这个鬼东西: panel3.HorizontalScroll.Value = panel3.HorizontalScroll.Maximum; panel3.HorizontalScroll.Value = panel3.HorizontalScroll.Maximum; 可以将panel的滚动条一直滚向最右边,当滚动条到最右边的时候。显示的区域中,panel的右上角坐标,应该是(panel.width ,0) 右下角(panel.width,panel.heigth) 我由于水平有限,以上仅供参考。
芹菜学长 2017-06-23
  • 打赏
  • 举报
回复
引用 1 楼 caozhy 的回复:
同样的问题,在ask,已经回答你了
我回复给我自己了……在#2
芹菜学长 2017-06-23
  • 打赏
  • 举报
回复 1
我搜索了一下wm_scroll消息是什么。
http://blog.csdn.net/testcs_dn/article/details/42360547
这个中的代码的第106行的吗?

有没有简单粗暴点的方法,我把我的描述在说明清晰点。

第一秒产生如下所示的样子



第二秒产生如下所示的样子



第三秒的时候,第三个label超出了panel的显示范围

此时,panel会产生一个水平的滚动条:

所以想要的效果是这样的:


现在我写两遍这个鬼东西:
panel3.HorizontalScroll.Value = panel3.HorizontalScroll.Maximum;
panel3.HorizontalScroll.Value = panel3.HorizontalScroll.Maximum;
貌似能够基本实现了。

但我不知道panel3.horizontalScroll 表示什么VS里面说得很笼统。

111,098

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧