六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網(wǎng)中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

改造Hint輸出方式

[摘要]Delphi為每個可視構(gòu)件(而非快速按鈕專屬)都提供了Hint及ShowHint特性,其中Hint屬性指定文本提示盒中的文本,而ShowHint屬性則決定鼠標指向構(gòu)件時是否顯示文本提示盒,當ShowHint值為True時,顯示文本提示盒。用戶可在對象監(jiān)視器(Object Inspector)的屬...
Delphi為每個可視構(gòu)件(而非快速按鈕專屬)都提供了Hint及ShowHint特性,其中Hint屬性指定文本提示盒中的文本,而ShowHint屬性則決定鼠標指向構(gòu)件時是否顯示文本提示盒,當ShowHint值為True時,顯示文本提示盒。用戶可在對象監(jiān)視器(Object Inspector)的屬性欄中設(shè)置或在程序中修改Hint及ShowHint屬性。

  除此之外,Delphi還在類TApplication中提供了HintColor、HintPause、HintHidePause、HintShortPause幾個屬性來控制文本提示盒的輸出方式。

  一般來說,HintColor、HintPause、HintHidePause、HintShortPause通常在Form的OnCreate事件中設(shè)定它們的值(如有需要的話),如以下的一段程序。

  ProcedureTMainForm.FormCreate(Sender:TObject);
  begin
  Application.HintPause:=0;{使文本提示盒立即出現(xiàn)}
  Application.HintPause:=clBlue;{以藍色小方框的方式出現(xiàn)}
  Application.HintHidePause:=10000;{延長停留時間為10秒}
  Application.HintShortPause:=100;
  end;

  另外,在編程中,我們還可以通過TApplication的OnHint事件獲取鼠標指向構(gòu)件的Hint文本。

  事實上,Delphi提供的文本提示盒輸出方框、文本字型都太小,既不美觀亦不易看清。值得慶幸的是,Delphi2.0版提供了全部構(gòu)件的源代碼,我們可以通過對類TApplication的源碼作一些小修改,增加一個HintFont的屬性,即可象修改HintColor一樣來修改文本提示盒的字體、
字型大小等。

  TApplication是在Forms單元里定義的,因此讓我們打開Forms.pas單元文件來作以下一些修改:

  ProcedureSetHintColor(Value:TColor};
  ProcedureSetHintFont(Value:TFont);{1997.04.19 MyNewIdea}
  Property HintColor:TColor read FHintColor Write SetHintColor;
  Property HintFont:TFontwriteSetHintFont;{1997.04.19Mynewidea}
  ProcedureTApplication.SetHintColor(Value:Color); //增加一個過程{1997.04.19Mynewidea}

  ProcedureTApplication.SetHintFont(Value:TFont);  
  begin
  if(Value nil) and (FHinWindow nil) then
  FHintWindow.Canvas.Font:=Value;
  end;{1997.04.19Mynewidea}

  別忘了在新增的語句旁作一些必要的注釋,如上 模?997.04.19Mynewidea},可以很清楚地知道哪些語句是你自己加進去的。

  將修改后的Forms.pas存盤,然后重建庫文件,以后在你的庫文件里,類TApplication就多了一個屬性HintFont,你就可以很輕易的通過HintFont屬性來修改文本提示盒的字體、字型大小了,如以下一段程序:

  ProcedureTMainForm.FormCreate(Sender:TObject);
  Var
  NewHintFont : TFont;
  begin
  NewHintFont:=TFont.Create;
  NewHintFont.Name:=楷體-GB2312;{設(shè)置字體為楷體}
  NewHintFont.Size:=12;{設(shè)置字型大小為12}
  Application.HintFont:=NewHintFont;
  end;

  此外,Delphi繪制文本提示盒是在類THintWindow的方法ActivateHint中通過WindowsAPI資源函數(shù)SetWindowPos來實現(xiàn)的,這段代碼在Controls.pas單元文件里,有興趣的讀者可以進一步修改這段代碼以繪制其他任意形狀(如橢圓、圓等)而不僅僅是矩型方框的文本提示盒!但或許最好的方法是從類THintWindow繼承下來一個新類,并重載ActivateHint方法,然后在應(yīng)用程序開始處給變量HintWindowClass指派一個新類實例。


相關(guān)文章

主站蜘蛛池模板: 三上悠亚久久国产 | 天天操天天操天天操 | 亚洲va欧美ⅴa国产va影院 | 欧美在线观看一区 | 日日cao| 日韩国产精品99久久久久久 | 四虎伊人| 色噜噜狠狠色综合免费视频 | 污污的视频在线播放 | 亚洲精品成人a | 日日摸夜夜添夜夜爽免费视频 | 四虎国产精品免费久久久 | 五月婷婷七月丁香 | 一区二区在线欧美日韩中文 | 日韩一区二区三区不卡视频 | 特别黄的免费视频大片 | 欧美视频黄色 | 日本护士后进式猛烈动态图片 | 一级做性色a爰片久久毛片免费 | 少妇激情av一区二区 | 亚洲精品有码在线观看 | 亚洲手机在线手机观看高清hd | 色视频久久| 日韩专区在线播放 | 四虎在线影视在线影库 | 五月婷婷丁香综合 | 亚洲第一网站快活影院 | 日韩成人免费观看 | 五月婷婷丁香色 | 中文学幕专区 | 四虎在线永久免费观看 | 日韩欧美精品综合一区二区三区 | 欧洲美女高清一级毛片 | 欧美亚洲激情在线 | 色成网| 色综合久久88色综合天天提莫 | 日本成人在线网址 | 日日拍夜夜嗷嗷叫狠狠 | 亚洲狠狠成人综合网 | 欧美性猛交xxxx乱大交 | 亚洲午夜久久影院 |