鼠标在一段时间内静止贴出提示标签的效果

来源:互联网 发布:windows域的作用 编辑:程序博客网 时间:2024/05/19 08:45
后台代码:<span style="font-family: Arial, Helvetica, sans-serif;">public partial class MainWindow : Window</span>
    {        public MainWindow()        {            InitializeComponent();        }         DispatcherTimer dtimer = new DispatcherTimer();        Point p;         private void Grid_MouseEnter(object sender, MouseEventArgs e)        {            Point p = Mouse.GetPosition(e.Source as IInputElement);            textBox1.Text = p.X.ToString() + ", " + p.Y.ToString();        }         #region 鼠标悬浮在按钮上1s         private void startTimer(object sender, MouseEventArgs e)        {            if (dtimer.IsEnabled == true)            {                dtimer.Stop();            }            dtimer = new DispatcherTimer();            dtimer.Interval = TimeSpan.FromMilliseconds(1000);            dtimer.Tick += show;            dtimer.Start();            dtimer.Tag = sender;            p = e.GetPosition(e.Source as IInputElement);        }         private void stopTimer()        {            if (dtimer.IsEnabled == true)            {                dtimer.Stop();            }        }         private void show(object o, EventArgs e)        {            DispatcherTimer objTimer = (DispatcherTimer)o;            Button objButton = (Button)objTimer.Tag;            MessageBox.Show(p.X.ToString() + "," + p.Y.ToString() + "\n" + objButton.Content.ToString());            dtimer.Stop();        }         #endregion         #region 各个按钮的悬浮事件、鼠标离开事件         private void btnOK_MouseMove(object sender, MouseEventArgs e)        {            startTimer(sender, e);        }         private void btnOK_MouseLeave(object sender, MouseEventArgs e)        {            stopTimer();        }         private void button1_MouseMove(object sender, MouseEventArgs e)        {            startTimer(sender, e);        }         private void button1_MouseLeave(object sender, MouseEventArgs e)        {            stopTimer();        }         #endregion             }
<span style="font-family: Arial, Helvetica, sans-serif;">前台代码:</span><span style="font-family: Arial, Helvetica, sans-serif;"><pre name="code" class="html"><Window x:Class="MouseEnterMakeTag.MainWindow"</span>
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"        Title="MainWindow" Height="350" Width="525"  >    <Grid MouseEnter="Grid_MouseEnter">        <Button Content="按钮1" Height="61" HorizontalAlignment="Left" Margin="12,12,0,0" Name="btnOK" VerticalAlignment="Top" Width="61" MouseMove="btnOK_MouseMove" MouseLeave="btnOK_MouseLeave" />        <TextBox Height="23" HorizontalAlignment="Left" Margin="371,12,0,0" Name="textBox1" VerticalAlignment="Top" Width="120" />        <Button Content="按钮2" Height="61" HorizontalAlignment="Left" Margin="12,79,0,0" Name="btnCancel" VerticalAlignment="Top" Width="61" MouseMove="button1_MouseMove" MouseLeave="button1_MouseLeave" />    </Grid></Window>



0 0
原创粉丝点击