全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1401
推到 Plurk!
推到 Facebook!

Form Height limit

答題得分者是:tick228
P.D.
版主


發表:603
回覆:4038
積分:3874
註冊:2006-10-31

發送簡訊給我
#1 引用回覆 回覆 發表時間:2019-07-24 09:57:48 IP:220.129.xxx.xxx 未訂閱
上一篇提到 RD 系統會因為 桌面的解析度而受限可設置的 Height 的上限, 進一步我發現, 如果使用 win10做為開發平台時, 因為 win10有一個比例可調整螢幕字體放大的倍數, 舉例來說, 我的解析是 1920*1080, 理論上高度應可達到 1080, 在 100%的比例下極高為1100, 就無法超過, 但如果我把比例調整150%, 此時極高上限只能到740, 我現在有一個程式需要 1500的高度, 在上述的限制下根本就無法開發, 或許各位會說把解析調高, 比例調小即可, 就理論上當然可以解決, 但實務上, 更高解析代表畫面上各個元件都小到不行, 我可能要在公司擺一台60吋大螢幕才能看清楚! 這擺明是欺負一個老人家, 
也有其他人說, 弄那麼大的表單, 客戶也不一定有那麼高解析的螢幕來支應, 這個說法是沒錯, 但我也可以設定為AutoScroll 的模式呈現捲動視窗,
所以我想要達到的效果是大表單面積, 只要能讓我拉超過螢幕物理性解析的上限以上, 就可以開發了, 困擾了年餘找不到方法可調整, 今天找到一篇網友的討論, 文中指出要對 TCustomForm.WMGetMinMaxInfo 著手, 但回答者並未指出要如何做, 不知各位前輩是否有做做的經驗可指點一二!
感恩....
https://stackoverflow.com/questions/35577709/how-to-set-form-height-larger-than-1096-pixels

ps. 我要達成的目標是在Design Mode 有超大尺寸的表單, 不是在RunTime下
編輯記錄
P.D. 重新編輯於 2019-07-24 10:06:20, 註解 無‧
tick228
高階會員


發表:1
回覆:47
積分:104
註冊:2003-11-03

發送簡訊給我
#2 引用回覆 回覆 發表時間:2019-07-24 13:15:29 IP:39.10.xxx.xxx 未訂閱
版主, 您好.

WMGetMinMaxInfo 只能在 RunTime 時會作用.

開發階段, 可將 Form 的 HorzScrollBar 及 VertScrollBar 裏的 Range 值
設成你要的大小, 就能用滑鼠捲動 ScrollBar 的顯示區.
(有在 V2010 試過, 可在你的版本試試)

除了用 ScrollBar 捲動顯示區的方法之外, 也可善用 Frame, 將不同的資訊
分類在不同的 Frame 上, MainForm 只顯示負責 Frame, 開發階段也會比
較方便.

在一個視窗顯示太多資訊, 並不是好的方式(太雜亂), 可用 PageControl 將
資訊分類, 顯示在不同的頁次上, 對使用者是比較好的操作方式, 開發也比
較方便.
編輯記錄
tick228 重新編輯於 2019-07-24 13:22:09, 註解 無‧
P.D.
版主


發表:603
回覆:4038
積分:3874
註冊:2006-10-31

發送簡訊給我
#3 引用回覆 回覆 發表時間:2019-07-24 21:48:10 IP:220.129.xxx.xxx 未訂閱
感恩, 還不知道 RD 有這個功能! 雖然和我想的有點不一樣, 不過確實能解解決大部份問題, 唯一就是表單大小仍然受限解析無法改變, 只好在程式中去指定form的高度了, 當然我也知道表單中放太多東西不好, 其實客戶想要也就要順著意, 而且程式中也有做PageControl了, 畢竟WIN VCL 的視覺表現不如 FMX的介面, 可以左拖右扯上滑下拉, 到處藏畫面, 目前這樣可以了, 謝謝!
系統時間:2024-04-29 17:47:03
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!