如何在窗体应用程序中动态更改快捷键?

5

我有一个Windows窗体应用程序项目。我想在这个应用程序中实现动态快捷键。用户可以根据需要更改他们的快捷键。我如何实现这些动态快捷键?


你需要让用户能够更改“热键”吗? - Dozer789
@Dozer789 :: 是的,我想制作热键。但不是预定义的。用户可以根据需要更改它。 - Animesh Ghosh
@AnimeshGhosh,虽然从asp.net的角度来看这个问题相当有趣,但我感觉你在这里询问的是关于Windows Forms的问题。为了更加清晰明了——你是在构建网站还是桌面应用程序? - Alexander Manekovskiy
@AlexanderManekovskiy:我正在开发一个桌面应用程序项目。 - Animesh Ghosh
快捷键是用于什么的?按钮、菜单栏还是链接标签? - user2509901
显示剩余5条评论
1个回答

2

这里有一些可能会有帮助的内容,我知道这不是最好的方式,但我无法做得更好。

string ii = "";

    protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
    {
        if (keyData == (Keys.Control | Keys.C) && ii == "C")
        {
            MessageBox.Show("Your shortcut key is: C!!");
        }
        return base.ProcessCmdKey(ref msg, keyData);
    }

    private void comboBox1_TextChanged(object sender, EventArgs e)
    {
        ii = comboBox1.Text;
    }

你的comboBox1是包含快捷键选项的ComboBox

这可能有所帮助,但您需要添加一堆if语句。希望这能帮到你!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接