我在表单上有一个按钮,我希望为其分配热键:
namespace WebBrowser
{
public partial class MainForm : Form
{
public MainForm()
{
InitializeComponent();
}
int GetPixel(int x, int y)
{
Bitmap bmp = new Bitmap(1, 1, PixelFormat.Format32bppPArgb);
Graphics grp = Graphics.FromImage(bmp);
grp.CopyFromScreen(new Point(x,y), Point.Empty, new Size(1,1));
grp.Save();
return bmp.GetPixel(0, 0).ToArgb();
}
// THIS! How can I make a hot-key trigger this button?
//
void Button1Click(object sender, EventArgs e)
{
int x = Cursor.Position.X;
int y = Cursor.Position.Y;
int pixel = GetPixel(x,y);
textBox1.Text = pixel.ToString();
}
void MainFormLoad(object sender, EventArgs e)
{
webBrowser1.Navigate("http://google.com");
}
}
}
假设这是一个 Windows 窗体项目WebBrowser
控制:WebBrowser
即使 Form KeyPreview 设置为“true”,只要获得焦点,就会“吃掉击键”。
使用WebBrowser PreviewKeyDown事件来调用按钮单击:
private void webBrowser1_PreviewKeyDown(object sender, PreviewKeyDownEventArgs event)
{
// Possibly filter here for certain keystrokes?
// Using e.KeyCode, e.KeyData or whatever.
button1.PerformClick();
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)