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

C# Cursor 屬性完整指南:所有內置光標類型與應用場景

     編輯:關於C#

一、Cursor 屬性基礎

Windows Forms 中,任何控件(含 Form)均有 Cursor 屬性,類型為 System.Windows.Forms.Cursor。默認 Cursors.Default(通常為箭頭)。設置方式:

// 內置光標
this.Cursor = Cursors.WaitCursor; // 沙漏
button1.Cursor = Cursors.Hand;    // 手形

// 自定義 .cur 文件
this.Cursor = new Cursor("path/to/custom.cur");

二、所有內置光標枚舉表

屬性名外觀描述典型應用場景
AppStarting箭頭+沙漏應用啟動中,指示忙碌但可交互
Arrow標準箭頭默認指針
Cross十字線繪圖、選區、精確定位
Default箭頭通用默認
Hand手形超鏈接、可點擊元素、拖拽手柄
Help箭頭+問號幫助模式、工具提示觸發區
HSplit水平分割雙箭頭水平分割條調整
IBeamI 型豎線文本編輯區、輸入框
No圓圈斜杠禁止操作、拒絕拖放
NoMove2D四向箭頭+禁止滾輪模式下無內容可滾動
NoMoveHoriz左右箭頭+禁止水平無內容可滾動
NoMoveVert上下箭頭+禁止垂直無內容可滾動
PanEast右向平移箭頭向右平移視圖
PanNE右上平移箭頭向右上平移
PanNorth上向平移箭頭向上平移
PanNW左上平移箭頭向左上平移
PanSE右下平移箭頭向右下平移
PanSouth下向平移箭頭向下平移
PanSW左下平移箭頭向左下平移
PanWest左向平移箭頭向左平移
SizeAll四向箭頭自由調整大小/移動
SizeNESW東北-西南雙向對角線調整大小
SizeNS南北雙向垂直調整大小
SizeNWSE西北-東南雙向對角線調整大小
SizeWE西東雙向水平調整大小
UpArrow向上箭頭插入點指示、向上導航
VSplit垂直分割雙箭頭垂直分割條調整
WaitCursor沙漏/轉圈長時間操作、后台處理中

三、進階用法

1. 臨時設置等待光標(模式對話框模式)

private void btnLongTask_Click(object sender, EventArgs e) {
    Cursor original = this.Cursor;
    this.Cursor = Cursors.WaitCursor;
    try {
        // 執行耗時操作...
        Task.Delay(3000).Wait(); // 模擬
    } finally {
        this.Cursor = original; // 確保恢復
    }
}

2. 應用程序級全局等待光標

Application.UseWaitCursor = true; // 設置
// 執行操作...
Application.UseWaitCursor = false; // 恢復

3. 自定義光標從資源流加載

using (Stream stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("MyApp.Cursors.custom.cur")) {
    if (stream != null) {
        this.Cursor = new Cursor(stream);
    }
}

4. 光標隱藏/顯示

Cursor.Hide(); // 全局隱藏
Cursor.Show(); // 全局顯示
// 或控件級:this.Cursor = Cursors.None; (需自定義透明光標)

四、WPF 中的對應

WPF 使用 System.Windows.Input.Cursors 類,屬性名類似(如 Cursors.Wait、Cursors.Hand),用法:this.Cursor = Cursors.Wait;。支持 XAML 綁定:<Button Cursor="Hand" />。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved