首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> C++ >> 關於C++

C++ Builder TForm 常用進階技巧總覽

     編輯:關於C++

五大實用表單技巧

一、視窗永遠置頂

設定 FormStyle = fsStayOnTop 即可讓視窗永遠顯示在最上層。

二、動態建立與釋放表單

預設表單皆為 Auto Create (啟動時即駐留記憶體)。對於偶爾使用的對話框,可移至 Available forms,需用時動態建立:

TForm1 *myform = new TForm1(this);
myform->ShowModal();
delete myform;

優點:減少記憶體佔用;缺點:首次顯示稍慢。

三、遍歷表單控制項

利用 ControlCount 與 Controls[] 陣列可批次操作同類控制項。範例:清空 Panel1 上所有 TEdit:

AnsiString namestring = "TEdit";
for (int i = 0; i < Panel1->ControlCount; i++) {
    if (Panel1->Controls[i]->ClassNameIs(namestring)) {
        TEdit *p = dynamic_cast<TEdit*>(Panel1->Controls[i]);
        p->Text = "";
    }
}

Components[] 包含所有子元件 (含非視覺),Controls[] 僅含視覺控制項且限於特定容器區域。

四、不規則視窗 (橢圓範例)

// 表單標頭檔私有區宣告
HRGN hWndRgn;

// OnCreate 事件
hWndRgn = ::CreateEllipticRgn(0, 0, Width, Height);
::SetWindowRgn(hWndRgn, TRUE);
// 設定 BorderStyle = bsNone (無標題、無邊框)

五、MDI 子視窗自動顯示與釋放

  • 建立時:Application->CreateForm(__classid(TChild), &Child); 即自動顯示,無需額外 Show。
  • 關閉時必須在 OnClose 設定 Action = caFree; 釋放記憶體,否則會殘留。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved