以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]窗口背景布局及按钮问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=83979)

--  作者:cd_tdh
--  发布时间:2016/4/20 16:10:00
--  [求助]窗口背景布局及按钮问题
我窗口类型:模式窗口,可以最大化最小化,添加了背景图片,图片上增加了按钮,当我最大化窗口时,背景图片不是全屏,按钮大小也变化了,我该怎么设置,可以让窗口自适应分辨率,按钮大小不变啊。
--  作者:大红袍
--  发布时间:2016/4/20 16:12:00
--  

 只能这样,但是这样的效果也不是很好

 

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=75714&replyID=521954&skin=1

 


--  作者:cd_tdh
--  发布时间:2016/4/20 16:12:00
--  

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目2.zip

示例文件已上传


--  作者:大红袍
--  发布时间:2016/4/20 16:21:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目2.zip


--  作者:cd_tdh
--  发布时间:2016/4/20 16:49:00
--  
最大化的时候可以不可让按钮不变大呢?
--  作者:大红袍
--  发布时间:2016/4/20 17:04:00
--  

改一下代码

 

For Each c As Winform.Control In e.Form.Controls
    If c.name = "Button2" Then
        c.Left = c.Left * (e.Form.Width / vars("width"))
        c.Top = c.Top * (e.Form.Height / vars("height"))
    Else
        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"))
    End If
Next

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


--  作者:cd_tdh
--  发布时间:2016/4/22 13:49:00
--  
我有多个按钮,最大化的时候所有按钮都不变大,代码怎么写呢?
--  作者:大红袍
--  发布时间:2016/4/22 14:21:00
--  

For Each c As Winform.Control In e.Form.Controls
    If TypeOf c Is WinForm.Button Then
        c.Left = c.Left * (e.Form.Width / vars("width"))
        c.Top = c.Top * (e.Form.Height / vars("height"))
    Else
        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"))
    End If
Next

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


--  作者:cd_tdh
--  发布时间:2016/4/22 15:18:00
--  

图片控件这样写不对呢,还是会变大For Each c As Winform.Control In e.Form.Controls
    If TypeOf c Is WinForm.PictureBox Then
        c.Left = c.Left * (e.Form.Width / vars("width"))
        c.Top = c.Top * (e.Form.Height / vars("height"))
    Else
        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"))
    End If
Next

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


--  作者:大红袍
--  发布时间:2016/4/22 15:19:00
--  
你图片控件是不是设置了 停靠或者锚定?不要设置。