Foxtable(狐表)用户栏目专家坐堂 → [求助]splitcontainer左右展开


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

主题:[求助]splitcontainer左右展开

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


加好友 发短信
等级:九尾狐 帖子:2243 积分:18477 威望:0 精华:0 注册:2011/11/26 20:21:00
[求助]splitcontainer左右展开  发帖心情 Post By:2020/11/9 11:35:00 [只看该作者]

Splitcontainer能不能点击分隔线,就把右边的panel收起来,再点一下,又展开来。但不是collapsed,因为叠起来就看不见分隔条了

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110766 积分:563762 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/11/9 11:45:00 [只看该作者]

有点麻烦,要自行改造这个控件,用起来有点麻烦,参考:http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=83709

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


加好友 发短信
等级:九尾狐 帖子:2243 积分:18477 威望:0 精华:0 注册:2011/11/26 20:21:00
  发帖心情 Post By:2020/11/9 14:14:00 [只看该作者]

试了下,可以用。小问题一个:如何把这个自定义的splitformex放到某个控件里?例如:e.form.controls(“splitcontainer1”).panel2.controls.add(自定义的控件)。上面这样报错了,提示未找到类型splitpanel的公共成员controls
[此贴子已经被作者于2020/11/9 14:15:57编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110766 积分:563762 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/11/9 14:15:00 [只看该作者]

贴出完整代码

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


加好友 发短信
等级:九尾狐 帖子:2243 积分:18477 威望:0 精华:0 注册:2011/11/26 20:21:00
  发帖心情 Post By:2020/11/9 14:19:00 [只看该作者]

窗口afterload事件

Dim sp As New SplitFormEx   '已经在全局代码里定义了public MainSplitFormEx 
MainSplitFormEx = sp
sp.Dock = 5
sp.FixedPanel = 1   '尺寸变化时,Panel保持不动
sp.SplitterDistance = 300  '分隔条的初始位置

e.Form.Controls("SplitContainer1").panel2.Controls.Add(sp)  ‘如果直接用e.Form.Panel.Controls.Add(sp)又没问题


sp.panel1.Controls.Add(e.Form.Controls("Table1").BaseControl)
e.Form.Controls("Table1").Dock = 5

sp.panel2.Controls.Add(e.Form.Controls("Table2").BaseControl)
e.Form.Controls("Table2").Dock = 5

下面是从那个示例中直接拷出来的

Public MainSplitFormEx As SplitFormEx   '主窗口中的分割面板

 

Public ColorSplitterStandard As Color = Color.White

Public ColorSplitterActivation As Color = Color.Black

Public ColorSplitterBack As Color = Color.LightGray

 

 

''' 这是一个用于窗口的分割器面板,继承SplitContainer

    ''' 能执行分区面板的收缩

    ''' 主要体现窗口分割的条的颜色

    Public Class SplitFormEx

        Inherits System.Windows.Forms.SplitContainer

[此贴子已经被作者于2020/11/9 14:21:41编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110766 积分:563762 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/11/9 14:34:00 [只看该作者]

e.Form.Controls("SplitContainer1").basecontrol.Panel2.Controls.Add(sp)

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


加好友 发短信
等级:九尾狐 帖子:2243 积分:18477 威望:0 精华:0 注册:2011/11/26 20:21:00
  发帖心情 Post By:2020/11/9 14:41:00 [只看该作者]

解决大问题了。感谢。
要是能把它直接集成到FT中就好啦。这个还是挺有用的

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


加好友 发短信
等级:九尾狐 帖子:2243 积分:18477 威望:0 精华:0 注册:2011/11/26 20:21:00
  发帖心情 Post By:2020/11/9 15:00:00 [只看该作者]

解决大问题了。感谢。
要是能把它直接集成到FT中就好啦。这个还是挺有用的

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


加好友 发短信
等级:九尾狐 帖子:2243 积分:18477 威望:0 精华:0 注册:2011/11/26 20:21:00
  发帖心情 Post By:2020/11/26 15:49:00 [只看该作者]

如果我想让这个上下布局,好像没这个参数啊。似乎只能左右
[此贴子已经被作者于2020/11/26 15:50:12编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110766 积分:563762 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/11/26 16:19:00 [只看该作者]

Dim sp As WinForm.SplitContainer = Forms("窗口4").Controls("SplitContainer1")
sp.Orientation = 0

 回到顶部
总数 12 1 2 下一页