国产探花免费观看_亚洲丰满少妇自慰呻吟_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,這樣你的軟件就可以窗體中控件自動隨窗體變化大小!

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


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 怀仁县| 富蕴县| 大埔区| 康马县| 秀山| 铁岭县| 镇远县| 嘉鱼县| 札达县| 麻栗坡县| 晴隆县| 凤城市| 苏尼特左旗| 濮阳县| 博兴县| 保德县| 鄢陵县| 合作市| 民县| 石柱| 鄂尔多斯市| 定日县| 临海市| 平远县| 易门县| 泽普县| 温宿县| 灵石县| 永德县| 宜州市| 五华县| 临漳县| 嘉定区| 清流县| 保德县| 溧阳市| 枝江市| 河源市| 阿拉善盟| 盘山县| 博湖县|