Foxtable(狐表)用户栏目专家坐堂 → 窗口自适应屏幕大小 的问题


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

主题:窗口自适应屏幕大小 的问题

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


加好友 发短信
等级:幼狐 帖子:120 积分:833 威望:0 精华:0 注册:2017/8/26 20:40:00
窗口自适应屏幕大小 的问题  发帖心情 Post By:2020/3/3 10:59:00 [只看该作者]

各位老师好!
为了让窗口自适应各种不同大小的屏幕,写了两端代码,窗口类型也设置成独立或者模式,自动滚开也是TRUE,为什么不起作用?
代码如下:

Afterload事件

vars("width") = e.Form.width
vars("height") = e.Form.height
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目2.foxdb


SizeChanged事件

For Each c As Winform.Control In e.Form.Controls
    c.Left = c.Left * (e.Form.Width / vars("width"))
    c.Top = c.Top * (e.Form.Height / vars("height"))
    c.Width = c.Width * (e.Form.Width / vars("width"))
    c.Height = c.Height * (e.Form.Height / vars("height"))
Next
msgbox(e.Form.Height / vars("height"))
vars("width") = e.Form.width
vars("height") = e.Form.height

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


加好友 发短信
等级:六尾狐 帖子:1348 积分:9827 威望:0 精华:0 注册:2015/6/30 8:46:00
  发帖心情 Post By:2020/3/3 11:03:00 [只看该作者]

vars("width") = e.Form.baseform.width

 

这里好像要这样改,你试试

 


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


加好友 发短信
等级:幼狐 帖子:120 积分:833 威望:0 精华:0 注册:2017/8/26 20:40:00
  发帖心情 Post By:2020/3/3 11:15:00 [只看该作者]

谢谢!试了,窗口还是没变化

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


加好友 发短信
等级:六尾狐 帖子:1348 积分:9827 威望:0 精华:0 注册:2015/6/30 8:46:00
  发帖心情 Post By:2020/3/3 11:27:00 [只看该作者]

如果只是适应屏幕

 

Afterload事件

e.Form.BaseForm.WindowState = System.Windows.Forms.FormWindowState.Maximized   


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


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

工具栏无法控制,仅对常规控件有效


AfterLoad事件

 

If e.Form.Width> 0 AndAlso e.Form.height > 0 Then
    vars("width") = e.Form.width
    vars("height") = e.Form.height
End If

 

 

SizeChanged事件

 

If e.Form.Width > 0 AndAlso e.Form.Height  > 0 Then
    For Each c As Winform.Control In e.Form.Controls
        c.Left = c.Left * (e.Form.Width / vars("width"))
        c.Top = c.Top * (e.Form.Height / vars("height"))
        c.Width = c.Width * (e.Form.Width / vars("width"))
        c.Height = c.Height * (e.Form.Height / vars("height"))
    Next
    'msgbox(e.Form.Height / vars("height"))
    vars("width") = e.Form.width
    vars("height") = e.Form.height
End If


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


加好友 发短信
等级:幼狐 帖子:120 积分:833 威望:0 精华:0 注册:2017/8/26 20:40:00
  发帖心情 Post By:2020/3/3 13:18:00 [只看该作者]


[此贴子已经被作者于2020/3/3 13:24:32编辑过]

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


加好友 发短信
等级:幼狐 帖子:120 积分:833 威望:0 精华:0 注册:2017/8/26 20:40:00
  发帖心情 Post By:2020/3/3 13:21:00 [只看该作者]


[此贴子已经被作者于2020/3/3 13:23:54编辑过]

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


加好友 发短信
等级:幼狐 帖子:120 积分:833 威望:0 精华:0 注册:2017/8/26 20:40:00
  发帖心情 Post By:2020/3/3 13:23:00 [只看该作者]

谢谢2900819580和有点蓝二位老师,主窗口适应屏幕大小的问题解决啦!谢谢


[此贴子已经被作者于2020/3/3 13:39:22编辑过]

 回到顶部