我試圖改變光標出現在標準ListView上,當光標出現在一個項目上時。不過,當鼠標變成手指光標時,我會產生閃爍的效果,然後回到我問它的位置。ListView光標變化和閃爍
我試圖隔離這個閃爍/改變到手形光標,但無法找出它發生的地方或如何阻止它。要複製此...
1)創建一個帶有ListView的窗體。 2)添加圖像列表和一些圖像。將視圖設置爲大圖標模式。 3)添加一些項目到ListView。
一個MouseMove
事件添加到ListView
:
private void listView1_MouseMove(object sender, MouseEventArgs e)
{
ListViewItem selected = this.listView1.GetItemAt(e.X, e.Y);
if (selected == null)
{
base.Cursor = Cursors.Default;
}
else
{
base.Cursor = Cursors.No;
}
}
執行的應用程序,在一個項目上移動鼠標。當你在一個項目上時,你應該看到光標在No(沒有輸入光標)和手指指針之間閃爍。問題是如何確保它只顯示No遊標並且不閃爍。 (C#.NET)。
我試着重寫OnMouseMove和OnMouseHover來返回,以確保這些不設置任何東西。我也嘗試覆蓋Cursor屬性,並說'只設置爲默認或沒有遊標',也沒有工作。
任何幫助的讚賞。
伊恩
它發生在其他地方嗎?例如,在超鏈接或其他應用程序中導航時?或者它只在你的應用程序中發生? 如果是這樣,它可能更多是一個操作系統問題... – Razzie 2009-02-27 10:49:34
它是跨平臺,跨應用程序。如果你閱讀我的評論teknohippy ...這個問題被誇大手工繪製物品和hottracking。我試過覆蓋WndProc返回,如果(m.Msg == 0x020)改變光標。有些東西將它切換到一隻手,但我不確定是什麼。 – Ian 2009-02-27 11:12:54