改變鼠標指針<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
翻譯:今天能看見山
有很多VCL控件都有Cursor屬性以使你能夠改變鼠標在這個控件的區域內的指針形態。當你只需要改變一個控件的鼠標指針時,這樣做很好。但是當你需要改變這個屏幕的鼠標指針時這樣做就有些不足了。例如,雖然你改變了一個窗體的Cursor屬性,但是當鼠標移動到這個窗體的其他控件上的時候,鼠標指針將會改變回去。改變整個屏幕的指針形狀,應該使用全屏幕的Cursor屬性。
下面的清單列舉了屏幕指針的所有可能值。
- crDefault
- crNone
- crArrow
- crCross
- crIBeam
- crSize
- crSizeNESW
- crSizeNS
- crSizeNWSE
- crSizeWE
- crUpArrow
- crHourGlass
- crDrag
- crNoDrop
- crHSplit
- crVSplit
- crMultiDrag
- crSQLWait
- crNo
- crAppStart
- crHelp
下面的步驟描述瞭如何建立一個用戶自定義的書邊指針,而不是系統可提供的指針。
第一步:使用圖片編輯器創建一個包含你自己定義的鼠標指針圖形的資源文件。然後把這個資源文件加入進工程。
第二步:有效的屏幕指針,首先包括系統定義的指針形狀(Tscreen類的Cursors數組屬性的所有值)。在你使用你自己定義的指針前,你必須先裝載它並且將它加入到這個Cursors數組中去。定義一個能表示你這個指針的常量和一個數組的索引值。然後用定義的索引值去裝載這個指針。
例如:
const TCursor crMyCustomCursor=1; // 自定義指針的ID號
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
// 將自定義指針裝載進Cursors數組
// "CURSOR1" 是用圖象編輯器設置的標識字符
Screen->Cursors[crMyCustomCursor]=LoadCursor((void*) HInstance,"CURSOR1");
}
第三步: 在任何你想轉換鼠標指針的時候將新的Cursor值賦給Screen->Cursor屬性.
例如:Screen->Cursor = crMyCustomCursor;