目標:為了使
winform
介面更美觀,加深使用者體驗,可根據使用者喜好選擇**。
設計思路:在
winform
中採取訪問配置檔案的形式記憶使用者選擇的**檔名及路徑。
設計方法:使用基於
.net
開發的換膚控制項
skinengine
,將irisskin2.dll
(支援.net2.0
)加至vs2005
的工具箱中。即可進行開發了。
問題描述:
從配置檔案中讀取客戶設定的**檔案路徑時,有可能為空或檔案不存在。這樣的話,會導致
mdi窗體的**載入出現錯誤。
解決方法:當出現**檔案路徑為空或檔案不存在時,就不載入**檔案,即設定
skinengine
的屬性active
與skinallform。
所以載入配置檔案時加入如下判斷:
// 獲取客戶端**路徑(mocklystone 2009-10-12)
this .skinengine1.skinfile = configsettings .getskin("skin" , "skinfile" );
string name = configsettings .getskin("skin" , "skinname" );
if (string .isnullorempty(this .skinengine1.skinfile)||!system.io.file .exists(skinengine1.skinfile))
擴充套件知識:
mdi窗體載入
讀取配置檔案類
public
class
configsettings
///
/// 獲取客戶端的**檔案(mocklystone 2009-10-12)
///
///
///
///
public
static
string getskin(string section, string key)
}
VCLSkin面板在MDI窗體下的問題
vclskin 在mdi窗體下的問題 vcl元件開發及應用 我在程式裡面使用了vclskin 控制項版本2.74 控制項放在資料模組窗體裡面屬性設定為skinformtype屬性設定為sfmainform 然後mdi主窗體的create事件這樣寫 procedure tfrmmain.formcre...
MDI窗體設計
1.mdi窗體設計 乙個父體中包含幾個子窗體,子窗體共同顯示。2.屬性 ismdicontener 是否將當前窗體設定為父窗體,預設為false 3.設計步驟 1 首先將當前窗體a設定為父窗體 2 通過乙個選單控制項,建立子窗體物件 3 將子窗體的父窗體設定為窗體a 4.方法layou i 給子視窗...
MDI窗體容器
mdi窗體容器 一般來說,窗體是頂級容器,不允許放在其他任何容器內,但是如果將某個窗體的ismdicontainer屬性設定為true,那此窗體就會成為窗體容器,可以在其中放入其他窗體 在內部的窗體不管怎麼調整,是無法跳出其父級窗體容器的 注 如果想讓內部窗體一直最大化並且不要其顯示最大化最小化按鈕...