vclskin**在mdi窗體下的問題 vcl元件開發及應用
我在程式裡面使用了vclskin**控制項版本2.74
控制項放在資料模組窗體裡面屬性設定為skinformtype屬性設定為sfmainform
然後mdi主窗體的create事件這樣寫
procedure tfrmmain.formcreate(sender: tobject);
begin
doublebuffered:=true;
left:=0; top:=0;
windowstate:=wsmaximized;
imgcontext.picture.loadfromfile(getcontextimgpath); //裝載背景
fclientinstance := makeobjectinstance(clientwndproc);
fprevclientproc := pointer(getwindowlong(clienthandle,gwl_wndproc));
setwindowlong(clienthandle,gwl_wndproc, longint(fclientinstance));
end;
但是程式執行的時候主窗體不會最大化
為什麼啊?
有用過這個控制項的同道們看看
好象是bug
那有解決的辦法沒的啊?
第一次用這玩意
解決起來難度不小,mdi模式是微軟放棄的技術,就是因為裡面有硬傷。
這類控制項應用在mdi同樣也存在硬傷,最終也沒有全部解決。
難道要放棄mdi模式?>
我不用**控制項就是正常的啊
一加上這個**控制項就不行了
如果客戶端是執行在xp以上的系統,可以不用這個**控制項了。
關鍵不都是在xp系統下的撒
而且按鈕樣式呢?
vclskin提供了幾個解決辦法,諸如執行時動態調整form的caption
最大化問題我也遇到過,是顯示fastreport報表的時候,fr的窗體已經最大化了,但是顯示起來還是正常狀態,還要手動點一次,好像是把對話方塊拉到跟螢幕一樣大小,下次再啟動就正常了,你可以試試,懷疑vclskin將狀態寫到登錄檔了
不行啊!
我只要一加上**檔案就不行了
只放控制項不加**檔案沒的問題
你可以試下傳送兩次最小化窗體最大化訊息
換乙個**控制項板本。
不會最大化是什麼樣的效果,是不是頂端會留有幾公釐的縫,看起來像整個窗體往下移動了幾公釐?
MDI窗體與面板skinEngine
目標 為了使 winform 介面更美觀,加深使用者體驗,可根據使用者喜好選擇 設計思路 在 winform 中採取訪問配置檔案的形式記憶使用者選擇的 檔名及路徑。設計方法 使用基於 net 開發的換膚控制項 skinengine 將irisskin2.dll 支援.net2.0 加至vs2005 ...
MDI窗體設計
1.mdi窗體設計 乙個父體中包含幾個子窗體,子窗體共同顯示。2.屬性 ismdicontener 是否將當前窗體設定為父窗體,預設為false 3.設計步驟 1 首先將當前窗體a設定為父窗體 2 通過乙個選單控制項,建立子窗體物件 3 將子窗體的父窗體設定為窗體a 4.方法layou i 給子視窗...
MDI窗體容器
mdi窗體容器 一般來說,窗體是頂級容器,不允許放在其他任何容器內,但是如果將某個窗體的ismdicontainer屬性設定為true,那此窗體就會成為窗體容器,可以在其中放入其他窗體 在內部的窗體不管怎麼調整,是無法跳出其父級窗體容器的 注 如果想讓內部窗體一直最大化並且不要其顯示最大化最小化按鈕...