Foxtable(狐表)用户栏目专家坐堂 → 分区界面与窗口高度


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

主题:分区界面与窗口高度

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


加好友 发短信
等级:三尾狐 帖子:767 积分:6119 威望:0 精华:0 注册:2018/2/1 17:26:00
分区界面与窗口高度  发帖心情 Post By:2018/8/26 15:03:00 [只看该作者]

老师:
有二个分区界面SplitContainer1和SplitContainer2,点击按钮,关闭分区界面1的Panel2,并要求窗口高度与Panel1相同。


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


代码如下:

Dim sp As WinForm.SplitContainer = e.Form.Controls("SplitContainer1")
If e.Sender.text = "∨∨∨∨" Then
    sp.Panel2.Collapsed = True
    e.sender.text = "∧∧∧∧"
Else
    sp.Panel2.Collapsed = False
    e.sender.text = "∨∨∨∨"
End If

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/8/26 23:16:00 [只看该作者]

做个具体的例子发上来测试吧。

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


加好友 发短信
等级:三尾狐 帖子:767 积分:6119 威望:0 精华:0 注册:2018/2/1 17:26:00
  发帖心情 Post By:2018/8/26 23:20:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:分区界面18.table


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/8/27 0:12:00 [只看该作者]

Dim sp As WinForm.SplitContainer = e.Form.Controls("SplitContainer1")
If e.Sender.text = "∨∨∨∨" Then
    e.Form.baseform.height = 385
    sp.Panel2.Collapsed = True
    e.sender.text = "∧∧∧∧"
Else
    e.Form.baseform.height = 486
    sp.Panel2.Collapsed = False
    e.sender.text = "∨∨∨∨"
End If

 回到顶部
客人(101.71.*.*)
  5楼


  发帖心情 Post By:2018/9/12 13:51:00 [只看该作者]

老师
需求:如何提取SplitContainer1的变化前的高度??

Dim sp As WinForm.SplitContainer = e.Form.Controls("SplitContainer1")
If e.Sender.text = "∨∨∨∨" Then
    e.Form.baseform.height = sp.Panel1.height
    sp.Panel2.Collapsed = True
    e.sender.text = "∧∧∧∧"
Else
    e.Form.baseform.height = sp.height  '能否调用变化前的高度???
    sp.Panel2.Collapsed = False
    e.sender.text = "∨∨∨∨"
End If



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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/9/12 15:02:00 [只看该作者]

单独用一个 static 变量或者 vars 变量记录之前的值。

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


加好友 发短信
等级:三尾狐 帖子:767 积分:6119 威望:0 精华:0 注册:2018/2/1 17:26:00
  发帖心情 Post By:2018/9/12 15:57:00 [只看该作者]

有点甜老师如何使用变量,我不会,能否指点?

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/9/12 15:59:00 [只看该作者]

在改变之前,先记录其值,如

 

vars("旧值") = sp.height

'然后后面代码改变控件高度


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


加好友 发短信
等级:三尾狐 帖子:767 积分:6119 威望:0 精华:0 注册:2018/2/1 17:26:00
  发帖心情 Post By:2019/4/30 11:44:00 [只看该作者]

窗口为主窗口,sp1.Panel2为固定分区,如何读取窗口生成后的sp1.Panel1的高度,为什么sp1.Panel1.Height的高度是原窗口设计时的高度?

老师有没有办法根据不同电脑显示屏的窗口尺寸动态计算出窗口Table1加载行数?

 

 

Dim sp1 As WinForm.SplitContainer = e.Form.Controls("SplitContainer1")

'Dim n As Integer = Math.Floor((tb1.Grid.Height-20)/32)  '根据窗口tb1计算出加载行数
Dim n As Integer = Math.Floor((sp1.Panel1.Height-30)/32)  '根据窗口tb1计算出加载行数

 

 


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20190430103055.png
图片点击可在新窗口打开查看

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/4/30 12:36:00 [只看该作者]

你试试把代码写到sizechanged事件去

 

Dim sp1 As WinForm.SplitContainer = e.Form.Controls("SplitContainer1")

msgbox(sp1.Panel1.Height)


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