国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

窗體中控件自動隨窗體變化大小

2024-07-21 02:24:12
字體:
來源:轉載
供稿:網友
在開發中,往往開發人員需要控制控件大小適應窗口的大小,使得軟件在不同的分辨率下也顯得比例協調.
那么,怎么才能讓窗體中控件自動隨窗體變化大小呢?

我覺得有一種原始方法很有用,不讓窗體可以最大化:比如飛天餐飲軟件.......

當然這種方法是繞道而行.開發出來的軟件肯定好看不了.
好了,讓我們來引出下面這個很有用,比較專業的model吧.
--------------------------------------------------------------------------------
option explicit
private formoldwidth as long
'保存窗體的原始寬度
private formoldheight as long
'保存窗體的原始高度

'在調用resizeform前先調用本函數
public sub resizeinit(formname as form)
dim obj as control
formoldwidth = formname.scalewidth
formoldheight = formname.scaleheight
on error resume next
for each obj in formname
obj.tag = obj.left & " " & obj.top & " " & obj.width & " " & obj.height & " "
next obj
on error goto 0
end sub

'按比例改變表單內各元件的大小,在調用resizeform前先調用resizeinit函數
public sub resizeform(formname as form)
dim pos(4) as double
dim i as long, temppos as long, startpos as long
dim obj as control
dim scalex as double, scaley as double

scalex = formname.scalewidth / formoldwidth
'保存窗體寬度縮放比例
scaley = formname.scaleheight / formoldheight
'保存窗體高度縮放比例
on error resume next
for each obj in formname
startpos = 1
for i = 0 to 4
'讀取控件的原始位置與大小
temppos = instr(startpos, obj.tag, " ", vbtextcompare)
if temppos > 0 then
pos(i) = mid(obj.tag, startpos, temppos - startpos)
startpos = temppos + 1
else
pos(i) = 0
end if
'根據控件的原始位置及窗體改變大小的比例對控件重新定位與改變大小
obj.move pos(0) * scalex, pos(1) * scaley, pos(2) * scalex, pos(3) * scaley
next i
next obj
on error goto 0
end sub

'開發軟件時候,把這個modal裝入程序中.然后加入如下代碼:
private sub form_load()
call resizeinit(me) '在程序裝入時必須加入
end sub

private sub form_resize()
call resizeform(me) '確保窗體改變時控件隨之改變
end sub
--------------------------------------------------------------------------------

ok,這樣你的軟件就可以窗體中控件自動隨窗體變化大小!

你的軟件至少從外觀上從此變得不再那么難看了.而且大分辨率下也顯得比例協調了.


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 安阳县| 和平县| 邻水| 兴化市| 开封县| 长岭县| 大冶市| 勃利县| 巴林右旗| 庆云县| 泰和县| 固镇县| 舒城县| 阜新市| 隆化县| 酒泉市| 荆州市| 定远县| 阿拉善左旗| 中西区| 青田县| 抚远县| 九台市| 手游| 阿尔山市| 那曲县| 九龙县| 兴宁市| 灵台县| 克山县| 衡山县| 梅河口市| 延寿县| 从江县| 孟州市| 阿克陶县| 龙海市| 额济纳旗| 巴林右旗| 页游| 凌云县|