我們有一個由300多種不同形式組成的大型遺留數據庫驅動的VCL應用程序。我們希望提供一個練習(虛擬)數據庫以及與其生產數據庫一起安裝的軟件 - 可以在它們之間切換(用於培訓/練習等)。如何在不修改每個表單的代碼的情況下爲我的應用程序中的每個表單添加邊框?
的問題是,當用戶在使用實踐模式,我們必須做出一些非常明確站出來給他們,讓他們知道他們是在練習模式下工作。最理想的解決方案是在每個表單的內部邊緣放置一個紅色邊框。但有很多形式,我不想修改它們中的每一個。
如何,我可以添加這樣一個框架(Windows的邊框內,不在外面)沿着從一個全局的地方整個應用程序的所有形式的邊緣?
我不能使用VCL樣式,否則我會從那裏執行。我正在尋找一些可能迭代每個表格並繪製這個邊框的全球級別的東西。但是,這也意味着捕捉每個表單的調整大小信息並重新繪製這個邊界。
我可以看到最簡單的方法是創建具有此功能的基本形式,並從這個基本形式繼承整個系統的每個表單。但這仍然意味着確保每一種形式都是基於此。過去我們還有其他問題修改了現有表單的基本表單(另一個主題),所以如果還有另一個更簡單的解決方案,我想避免這種解決方案。
你的表格不是基於自己的基類嗎? – bummi
如果我從頭開始設計這個系統,我肯定會製作一個基礎表單。問題是,軟件大約有20年的歷史,並且規模巨大。許多不同的形式已經多次繼承。 –
因此插入一個基礎表單。什麼東西阻止你? –