請問"輔助說明"的功能該怎麼寫?或是有什麼元件可以達成這個功能,請各位網友指點迷津... |
答題得分者是:pgdennis
|
supertony
一般會員 發表:8 回覆:9 積分:3 註冊:2006-07-11 發送簡訊給我 |
各位網友大家好:
在使用各種工具時,都會有一個功能:當我把滑鼠放在icon小圖示上時,會跳出一個說明框簡述該小圖示代表的意義(例如:存檔、列印等等)。現在我想利用這個功能,當我的滑鼠移到DBGrid上某一列時,那一列的"備註"欄位裡面的值,能夠顯示在由滑鼠所在的位置跳出的說明框中。需要使用到這個功能的原因是"備註"欄位的說明太長,會導致DBGrid需要左右移動非常不便,因此將"備註"欄位的長度限制住,可是這又導致要看"備註"欄位資料時很不方便,因此需要這個功能來解決使用者的問題。請問若我要達到這樣的功能,該使用什麼元件呢?請各位網友不吝賜教,若方便提出簡單的範例說明,更是感激不盡,謝謝各位網友撥冗觀看及指導解說~^0^ |
pgdennis
資深會員 發表:41 回覆:526 積分:443 註冊:2002-05-23 發送簡訊給我 |
請參考http://delphi.about.com/od/vclusing/a/menuitemhints_2.htm 依你需求,我改成cell click時候觸發hint 如下 Unit Unit1;
How to Display Menu Item Hints in Delphi applications http://delphi.about.com/od/vclusing/a/menuitemhints.htm By (Windows) design, in Delphi applications, hints assigned ~ Zarko Gajic } Interface Uses
TForm1 = Class(TForm) Var Implementation Procedure TForm1.FormCreate(Sender: TObject); { TMenuItemHint } Constructor TDbgridHint.Create(AOwner: TComponent); showTimer := TTimer.Create(self); hideTimer := TTimer.Create(self); Destructor TDbgridHint.Destroy; Procedure TDbgridHint.DoActivateHint(aDbgrid: TDbgrid); If aDbgrid.DataSource.DataSet.FieldByName('WKDESC').AsString = '' Then activeDbgrid := aDbgrid; showTimer.OnTimer := ShowTime; Procedure TDbgridHint.ShowTime(Sender: TObject); r.Left := Mouse.CursorPos.X 16; ActivateHint(r, activeDbgrid.DataSource.DataSet.FieldByName('WKDESC').AsString); showTimer.OnTimer := Nil; Procedure TDbgridHint.HideTime(Sender: TObject); Procedure TForm1.DBGrid1CellClick(Column: TColumn); End.
------
星期一,二...無窮迴圈@@ |
pgdennis
資深會員 發表:41 回覆:526 積分:443 註冊:2002-05-23 發送簡訊給我 |
|
supertony
一般會員 發表:8 回覆:9 積分:3 註冊:2006-07-11 發送簡訊給我 |
|
pgdennis
資深會員 發表:41 回覆:526 積分:443 註冊:2002-05-23 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |