2012-11-03 75 views
1

如何在設計時間內運行一些代碼以更改窗體上的某些內容?如何在設計時運行代碼?

我都試過,但這隻適用於運行時間:

constructor TForm1.Create(AOwner: TComponent); 
begin 
    inherited; 
    Form1.Font.Color := clRed; 
end; 

我知道有「神奇」的程序,如「註冊」,並有「初始化」,但我不認爲這能幫助這裏。

請注意,我的觀點是不是隻是改變字體顏色爲紅色,而是做的形式出現複雜的變化,我想在設計時看到的。

+1

不可能的。 Delphi代碼是*編譯*不是一些解釋性腳本語言。不過,你可以換個方式。在設計器中進行修改,然後創建運行時代碼。我認爲這是Delphi IDE中的一個默認功能(如果沒有,請使用GExperts.org)。 –

+0

我不能做設計師的變化,因爲他們太複雜了。我只需要快速預覽更改並每次編譯程序,並檢查這是否正常需要很多時間。也許我可以做這樣的事情:從項目中分離出一個過程,把它放在另一個包中,創建一個BAT文件來重新編譯這個文件。但是,那麼如何告訴Delphi設計師重新加載軟件包?或者,也許我應該製作一個新的包,用於解析保存在文件中的佈局/設計。這應該可行,不是嗎?它只需要一個相當先進的解析器來支持複雜的語法 – Tom

+0

請您告訴我們更多。什麼是最終目標。 –

回答

1

如果你打算做了很多這方面,還是複雜的操作,你可能會更好做,在運行時,這個設計工作。創建屬性編輯器並不是很多工作,並且在運行時也不需要操作構件樹。