在awesomium中使用鼠标单击(c#)

时间:2013-04-19 19:42:12

标签: c# mouse awesomium

我正在使用awesomium而我正在尝试使用命令“InjectMouseDown”。不幸的是没有任何反应 我正在尝试使用以下代码:

private void newbrowser()
        {
            dir = "C:\\AwCache\\" + RandomString(10);

            _webView = WebCore.CreateWebView(800, 600);
            _webView.ParentWindow = this.Handle;
            using (WebSession session = WebCore.CreateWebSession(dir, new WebPreferences() { /*CustomCSS = "body { zoom: 75%; }", ProxyConfig = proxyok,*/ }))
            {
                _webView.Source = new Uri("http://www.google.com");
                _webView.DocumentReady += WebViewOnDocumentReady;
            }
        }
private void WebViewOnDocumentReady(object sender, UrlEventArgs urlEventArgs)
        {
            timer1.Enabled = true;
        }
private void timer1_Tick(object sender, EventArgs e)
        {
                _webView.InjectMouseMove(5, 100);
                _webView.InjectMouseDown(MouseButton.Left);
}

1 个答案:

答案 0 :(得分:0)

在timer1_tick中,同时添加 InjectMouseUp(MouseButton.Left); 。 一旦我注入了所有三个鼠标事件(InjectMouseMove,InjectMouseDown,InjectMouseUp) 进入WebView它起作用了。

以下是适合我的示例代码(尽管用C ++编写)。

 void Containerclass::mousePressed(ofMouseEventArgs &e)
 {
   webview->InjectMouseMove(e.x - loc.x, e.y - loc.y); 
   webview->InjectMouseDown(MouseButton_Left);
   webview->InjectMouseUp(MouseButton_Left);
 }