C++Builder 設計檔案分割器:二進位讀寫分割與合併、進度顯示、多執行緒雛形
原理 所有檔案本質為二進位位元組流。分割:依指定大小 (KB) 切塊寫出 `檔名.001`、`.002`... 合併:依序讀入各分割檔寫回目標檔。 介面元件
將網頁儲存為單一 MHT 檔:CDO IMessage.CreateMHTMLBody 完整代碼
需求 將完整網頁 (HTML + 圖片 + CSS + JS) 封裝為單一 `.mht` (MIME HTML) 檔,離線瀏覽/歸檔。 核心介面:CDO.Me
多檔案捆綁為單一可執行檔:二進位拼接 + 執行時自解壓釋放原理
核心思想 建立新二進位檔:依序寫入 **綁定器本體** + **長度** + **檔案1資料** + **長度** + **檔案2資料** + **長度** .
DBGrid 滑鼠滾輪支援:子類化 (SetWindowLong/GWL_WNDPROC) 攔截 WM_MOUSEWHEEL
痛點 DBGrid 預設不響應滑鼠滾輪,需自行實現垂直捲動。 子類化方案 全域 `FARPROC OldProc` 保存原 `WindowProc`。 0
StringGrid 右鍵選單複製貼上:PopupMenu + Clipboard + MouseToCell 座標轉換
元件配置 `TStringGrid` (名 `StringGrid1`) `TPopupMenu` (名 `PopupMenu1`) → 兩項目:`miCop
RichEdit 實現上標/下標:EM_SETCHARFORMAT + CFM_OFFSET 完整封裝
核心訊息 `EM_SETCHARFORMAT` (wParam=`SCF_SELECTION`) 設定選取文字格式。`CHARFORMAT` 結構 `dwMas
使用者介面設計風格規範 (上):原則、一致性、標籤/字型/色彩/佈局標準
1. 設計原則 GUI 直觀透明:使用者一眼理解功能,少量訓練即上手。 使用者為核心:流程由使用者控制,非開發者強加。 設計須經確認始定案。 2. 介面一
使用者介面設計風格規範 (下):精靈、響應時間、線上說明
2.3 精靈使用原則 適用:固定流程、≥3 步驟、需引導使用者輸入。 不適用:靈活操作、專家模式、單步驟任務。 2.4 系統響應時間規範 響應長度介面回
C++Builder 調試 Active Form (ActiveX) 完整步驟:Web Deployment + IE Host
調試流程 (9 步) 編譯器設定:Project → Options → Compiler → Full Debug。 完整建置:Project → Buil
與 IE 瀏覽器互動:ShellWindows 介面遍歷實例、取得 Document 物件、操作 DOM
核心介面:IShellWindows 代表 Shell 開啟視窗集合 (含 IE、資源管理器)。IE 不註冊 ROT,必須透過此介面枚舉。 VC/C++Bui
修改通用開啟對話框按鈕標題:OnShow + GetDlgItem + SetWindowText
場景 將「開啟」按鈕改為「新增檔案」等自訂文字,符合業務語意。 代碼 (TOpenDialog OnShow) Handle); // 取得真實對話框 HWN
程式最小化/還原三法:WM_SYSCOMMAND、ShowWindow、Application 方法對比
方法一:發送 WM_SYSCOMMAND (功能最全) Handle, WM_SYSCOMMAND, SC_RESTORE, 0); // 亦可用 SC_MAX
Enter 鍵控制焦點切換:KeyPreview + WM_NEXTDLGCTL 實現 Tab 鍵替代
需求 使用者習慣按 Enter (而非 Tab) 在輸入框間移動焦點。 實現 表單 `KeyPreview = true`。 `OnKeyPress` 事件
C++Builder 自訂 QuickReport 預覽視窗:工具列、進度條、QRPreview 整合
動機 內建預覽視窗功能固定、風格不一,自訂可整合列印、縮放、頁碼、進度顯示等。 介面佈局 `TToolBar`:列印、列印設定、上/下頁、放大/縮小、關閉按
TForm 常用技巧大全:置頂、動態建立、控件遍歷、不規則視窗、MDI 子視窗管理
1. 視窗永遠置頂 `FormStyle = fsStayOnTop`。 2. 動態建立/銷毀視窗 (節省記憶體) ShowModal(); delete f
C++Builder 圓形/三角形按鈕實現:CreateEllipticRgn/CreatePolygonRgn + SetWindowRgn
原理 Windows 95+ 支援視窗區域,決定可見/點擊/繪製範圍。按鈕 (`HWND`) 套用非矩形區域即成為異形按鈕。 兩步驟 建立區域:`Creat
打造 Dreamweaver 風格多視窗應用:任務列獨立顯示、無主視窗感知、共享資料
特徵分析 每個編輯視窗在任務列獨立顯示按鈕。 關閉任一視窗不影響其他視窗。 視窗間共享設定 (如儲存路徑)。 實際上屬於同一進程,共用 `Applicatio
C++Builder 將說明選單移至最右側:MFT_RIGHTJUSTIFY 實現
目標 主選單倒數第二項 (通常為「說明」) 靠右顯示,符合經典 Windows 應用習慣。 核心代碼 Handle, 1, TRUE, &mii); Draw