Foxtable(狐表)用户栏目专家坐堂 → 窗口中控件很多时如何滚动显示?


  共有5478人关注过本帖树形打印复制链接

主题:窗口中控件很多时如何滚动显示?

帅哥哟,离线,有人找我吗?
scott518
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:292 积分:2488 威望:0 精华:0 注册:2011/11/4 17:32:00
窗口中控件很多时如何滚动显示?  发帖心情 Post By:2014/2/15 11:18:00 [显示全部帖子]

如下图,窗口最大化时由于控件很多显示不完,此种情况如何处理才能显示出来,比如滚动什么的,是不是要将其放在面板等容器类中才可以。


图片点击可在新窗口打开查看此主题相关图片如下:360截图20140215111144249.jpg
图片点击可在新窗口打开查看

 

谢谢!


 回到顶部
帅哥哟,离线,有人找我吗?
scott518
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:292 积分:2488 威望:0 精华:0 注册:2011/11/4 17:32:00
  发帖心情 Post By:2014/2/15 11:34:00 [显示全部帖子]

谢谢,什么是分页集合(不是页面集合吧)?因为这些控件都是在处理当前表格的数据是都会用到的,即要在不切换界面的情况下可以滚动上面的控件出来使用。能否象下面这样在右侧出现一个可以向右展开的功能按钮什么的?

 


图片点击可在新窗口打开查看此主题相关图片如下:360截图20140215112918429.jpg
图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
scott518
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:292 积分:2488 威望:0 精华:0 注册:2011/11/4 17:32:00
  发帖心情 Post By:2014/2/15 12:00:00 [显示全部帖子]

窗口设置为自动滚动适合控件直接在窗口下面的情况,现在控件是在一个页面集合内部的分区面板的上方。

所以还是不太明白,现在设计的整个窗口如下:

 
图片点击可在新窗口打开查看此主题相关图片如下:360截图20140215114349056.jpg
图片点击可在新窗口打开查看

 

当电脑的屏幕分辩率比较小的时候,如1024X768时,下面是分区面板,里面的表格列多时是可以通过滚动条显示出来的,但此分区面板上方的控件显示不完时就看不见了。


 

[此贴子已经被作者于2014-2-15 13:01:44编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
scott518
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:292 积分:2488 威望:0 精华:0 注册:2011/11/4 17:32:00
  发帖心情 Post By:2014/2/21 15:03:00 [显示全部帖子]

谢谢lsy,那样的话当控件多时会在下方出现左右的滚动条,右侧出现上下滚动条,尤其是下面那个长的滚动条 ,反而把原来的控件都挡住一半了,更不美观,能否让panel面板内的控件出现4#楼那样的一个向右移动的箭头来往右滑动。那样最好了。

 回到顶部
帅哥哟,离线,有人找我吗?
scott518
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:292 积分:2488 威望:0 精华:0 注册:2011/11/4 17:32:00
  发帖心情 Post By:2014/2/21 17:02:00 [显示全部帖子]

谢谢,要是有附件就好了,不知到那个左右的按钮要怎么做,即当前控件比较少的时候,没有超出宽度的话按钮就不出现,超出宽度是按钮才自动出现,然后通过你上面说的代码就可以实现左右移动了。

 回到顶部
帅哥哟,离线,有人找我吗?
scott518
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:292 积分:2488 威望:0 精华:0 注册:2011/11/4 17:32:00
  发帖心情 Post By:2014/2/22 13:32:00 [显示全部帖子]

谢谢lsy!可以了。

 回到顶部
帅哥哟,离线,有人找我吗?
scott518
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:292 积分:2488 威望:0 精华:0 注册:2011/11/4 17:32:00
  发帖心情 Post By:2014/3/5 10:07:00 [显示全部帖子]

我也是按16楼那个例子修改的,只是我的控件是在分区面板的上方而已。所以窗口的TimerTick的代码修改了下,具体要根据自己的需要来确定。贴出代码仅供参考。

图片点击可在新窗口打开查看此主题相关图片如下:a1.gif
图片点击可在新窗口打开查看

Dim pn As WinForm.Panel = e.Form.Controls("Panel4")
If Val(e.Form.Text) < = e.Form.Controls("btnMoveP").Height / 2 Then
    If pn.Width > e.Form.Controls("SplitContainer2").Width AndAlso (pn.Left + pn.Width) > e.Form.Controls("SplitContainer2").Width
        pn.Left - = 50
    End If
Else
    If pn.Left < 0
        pn.Left + = 50
    End If
End If

 回到顶部