在光标位置打开一个小的浮动窗口

贾尼夫

我正在写一个小的概念证明,要求我听一些按键组合,按下该组合键会WPF/WinForms在当前光标位置下方打开一个小窗口。我更像一个网络专家,因此我在开始时遇到了麻烦。

谁能指出我正确的方向?或提供一些资源/示例?

谢谢。

阿纳托利·尼古拉耶夫(Anatoliy Nikolaev)

对于WPF,请尝试以下示例。通过按键,Enter可以Popup预先显示一个窗口,以接收鼠标光标的坐标。

XAML

<Window x:Class="OpenWindowForCursor.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525"
        WindowStartupLocation="CenterScreen"
        PreviewKeyDown="Window_PreviewKeyDown">

    <Grid>
        <Popup Name="PopupWindow"
               Placement="Relative"
               IsOpen="False"
               StaysOpen="False">

            <Border Width="100" 
                    Height="100"
                    Background="AntiqueWhite">

                <Label Content="Test" />
            </Border>
        </Popup>
    </Grid>
</Window>

Code-behind

public partial class MainWindow : Window
{
    public MainWindow()
    {
        InitializeComponent();
    }

    private void Window_PreviewKeyDown(object sender, KeyEventArgs e)
    {
        if (e.Key == Key.Enter) 
        {
            PopupWindow.IsOpen = true;

            var point = Mouse.GetPosition(Application.Current.MainWindow);
            PopupWindow.HorizontalOffset = point.X;
            PopupWindow.VerticalOffset = point.Y;
        }
    }
}

Edit: An easier solution

您可以设置Placement="Mouse"Popup接收鼠标坐标,而不是:

XAML

<Grid>
    <Popup Name="PopupWindow"
           Placement="Mouse"
           IsOpen="False"
           StaysOpen="False">

        <Border Width="100" 
                Height="100"
                Background="AntiqueWhite">

            <Label Content="Test" />
        </Border>
    </Popup>
</Grid>

Code-behind

public partial class MainWindow : Window
{
    public MainWindow()
    {
        InitializeComponent();
    }

    private void Window_PreviewKeyDown(object sender, KeyEventArgs e)
    {
        if (e.Key == Key.Enter)
        {
            PopupWindow.IsOpen = true;
        }
    }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用Tkinter在闪烁的光标下方打开一个新窗口

来自分类Dev

在C中打开一个新的终端窗口

来自分类Dev

如何防止情节提要打开一个窗口

来自分类Dev

在layerGroup上打开一个传单弹出窗口

来自分类Dev

用链接打开一个子窗口?

来自分类Dev

在目标框架中打开一个窗口

来自分类Dev

如何防止情节提要打开一个窗口

来自分类Dev

GUI,JComboBox并打开一个新窗口

来自分类Dev

让按钮打开一个新窗口

来自分类Dev

打开一个新窗口然后提交表单

来自分类Dev

打开一个新窗口并返回

来自分类Dev

在远程机器上打开一个窗口

来自分类Dev

关闭所有打开的Featherlight窗口,然后再打开一个新窗口

来自分类Dev

我想打开一个新标签而不是一个弹出窗口

来自分类Dev

javascript / Jquery弹出窗口-一次只能打开一个弹出窗口

来自分类Dev

试图从不同的窗口打开一个现有的窗口

来自分类Dev

在窗口中居中打开一个窗口(不是浏览器)

来自分类Dev

隐身窗口中的chrome.tabs.create在普通窗口中打开一个标签

来自分类Dev

传单地图:打开一个窗口时,如何阻止所有弹出窗口关闭?

来自分类Dev

关闭实际的窗口并从ViewModel中打开一个新窗口

来自分类Dev

如果Apple Script没有(或只是信息窗口),则打开一个新的Finder窗口?

来自分类Dev

从互联网打开Excel文件会打开一个空白的Excel窗口

来自分类Dev

如何首先打开一个窗口,而不是在WPF(C#)中打开MainWindow

来自分类Dev

以编程方式打开一个新窗口(或新选项卡),而不总是打开一个弹出窗口

来自分类Dev

如何通过单击按钮从另一个xaml窗口中打开一个xaml窗口?

来自分类Dev

使用javascript和前一个窗口中的信息打开一个新窗口

来自分类Dev

使用javascript按下按钮时,如何打开一个窗口并关闭另一个窗口?

来自分类Dev

如何在两个窗口中打开一个PowerPoint文件?

来自分类Dev

C#WPF-希望一次打开多个窗口,但每个窗口仅打开一个实例

Related 相关文章

  1. 1

    使用Tkinter在闪烁的光标下方打开一个新窗口

  2. 2

    在C中打开一个新的终端窗口

  3. 3

    如何防止情节提要打开一个窗口

  4. 4

    在layerGroup上打开一个传单弹出窗口

  5. 5

    用链接打开一个子窗口?

  6. 6

    在目标框架中打开一个窗口

  7. 7

    如何防止情节提要打开一个窗口

  8. 8

    GUI,JComboBox并打开一个新窗口

  9. 9

    让按钮打开一个新窗口

  10. 10

    打开一个新窗口然后提交表单

  11. 11

    打开一个新窗口并返回

  12. 12

    在远程机器上打开一个窗口

  13. 13

    关闭所有打开的Featherlight窗口,然后再打开一个新窗口

  14. 14

    我想打开一个新标签而不是一个弹出窗口

  15. 15

    javascript / Jquery弹出窗口-一次只能打开一个弹出窗口

  16. 16

    试图从不同的窗口打开一个现有的窗口

  17. 17

    在窗口中居中打开一个窗口(不是浏览器)

  18. 18

    隐身窗口中的chrome.tabs.create在普通窗口中打开一个标签

  19. 19

    传单地图:打开一个窗口时,如何阻止所有弹出窗口关闭?

  20. 20

    关闭实际的窗口并从ViewModel中打开一个新窗口

  21. 21

    如果Apple Script没有(或只是信息窗口),则打开一个新的Finder窗口?

  22. 22

    从互联网打开Excel文件会打开一个空白的Excel窗口

  23. 23

    如何首先打开一个窗口,而不是在WPF(C#)中打开MainWindow

  24. 24

    以编程方式打开一个新窗口(或新选项卡),而不总是打开一个弹出窗口

  25. 25

    如何通过单击按钮从另一个xaml窗口中打开一个xaml窗口?

  26. 26

    使用javascript和前一个窗口中的信息打开一个新窗口

  27. 27

    使用javascript按下按钮时,如何打开一个窗口并关闭另一个窗口?

  28. 28

    如何在两个窗口中打开一个PowerPoint文件?

  29. 29

    C#WPF-希望一次打开多个窗口,但每个窗口仅打开一个实例

热门标签

归档