以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  这个代码为什么不执行?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=145341)

--  作者:hongye
--  发布时间:2020/1/16 18:05:00
--  这个代码为什么不执行?
Dim wj As Double
Dim hj As Double
wj =e.Form.width/ vars("width")
hj =e.Form.height/ vars("height")
For Each c As WinForm.Control In e.Form.Controls
    If Typeof c Is WinForm.label Then 
        Dim t As WinForm.label = c 
        If hj < 1 Then
            t.Left = c.Left * wj
            t.Top = c.Top * hj
            t.Width = c.Width * wj
            t.Height = c.Height * hj
        End If
    End If
Next
vars("width") = e.Form.width
vars("height") = e.Form.height

--  作者:有点蓝
--  发布时间:2020/1/17 8:33:00
--  
要做什么功能?
--  作者:hongye
--  发布时间:2020/1/17 10:32:00
--  
我想在窗口大小变化时,WinForm.label字体大小也发生变化
--  作者:有点蓝
--  发布时间:2020/1/17 10:41:00
--  
参考:http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=89385&skin=0

字体大小不好设置,字体是一维的,只有整体大小,无法单独拉高或拉宽;而窗口是二维的,有高和宽2个方向

--  作者:hongye
--  发布时间:2020/1/17 11:10:00
--  
Dim s As WinForm.Label = e.Form.Controls("Label1")
Dim Asd As WinForm.Label = e.Form.Controls("Label2")
Dim sz As WinForm.Label = e.Form.Controls("Label3")
Asd.text = s.Font.Size
Dim wj As Double
Dim hj As Double
Dim gj As Double
wj = e.Form.width * e.Form.height
hj = 510*387
gj = wj/hj
sz.text = gj
Dim sj As Double
sj = 24*gj
Dim fnt As New Font(CurrentTable.Font.Name,CLng(sj), CurrentTable.Font.Style)
s.Font = fnt
红字部分怎么改?

--  作者:有点蓝
--  发布时间:2020/1/17 11:17:00
--  
只能单独使用宽,或者单独使用高进行比例控制
--  作者:hongye
--  发布时间:2020/1/17 11:19:00
--  
 510*387 为什么和vars("width")* vars("height") 的结果不一样?

Dim fnt As New Font(CurrentTable.Font.Name,CLng(sj), CurrentTable.Font.Style)
在里面的CurrentTable怎么改?

--  作者:有点蓝
--  发布时间:2020/1/17 11:21:00
--  
Dim fnt As New Font(s.Font.Name,CLng(sj), s.Font.Style)
--  作者:hongye
--  发布时间:2020/1/17 11:31:00
--  
510*387 为什么和vars("width")* vars("height") 的结果不一样?
510*387是设计时的尺寸

--  作者:有点蓝
--  发布时间:2020/1/17 11:45:00
--  
如果使用1楼的代码,vars("width")不是随着窗口的变化而变化的吗?