2012-03-12 1 views
0

私はC#でアプリケーションを作っています。カーソルをボタンの上に置くたびに、メッセージが表示されるはずです。また、約3秒間マウスを動かすと、「マウスが3秒間ホバーしています」というメッセージが表示されます。マウスのホバー時間を遅らせる方法は?

+0

'OnMouseOver'イベントを使って' OnClick'イベントを発生させます。 – Shai

+0

ここには特別な質問がありますか?これまでに何を試しましたか? –

+2

ツールチップをお探しですか? –

答えて

0

問題を解決するために、これを使用してみてください:

private void label1_MouseHover(object sender, EventArgs e) 
{ 
    label_Click(null, null); // this will fire click event 
} 
0

あなたはタイマーを設定し、以下に示すようにMouseEnterイベント/ MouseLeaveイベントを使用する必要があります。

Timer t; 
    public MainWindow() 
    { 
     InitializeComponent(); 
     t = new Timer(3000); 
     t.Elapsed += t_Elapsed; 


    } 

    void t_Elapsed(object sender, ElapsedEventArgs e) 
    { 
     MessageBox.Show("Your mouse has been hovering for 3 seconds"); 
    } 


    private void btn_MouseEnter(object sender, MouseEventArgs e) 
    { 
     //MessageBox.Show("Hovered"); 
     t.Start(); 
    } 

    private void btn_MouseLeave(object sender, MouseEventArgs e) 
    { 
     t.Stop(); 
    } 

はXAML:

<Button x:Name="btn" Content="Button" HorizontalAlignment="Left" MouseEnter="btn_MouseEnter" MouseLeave="btn_MouseLeave" Click="btn_Click"/> 
関連する問題