How to use Mouse class of FlaUI.Core.Input package

Best FlaUI code snippet using FlaUI.Core.Input.Mouse

CalculatorUiTest.cs

Source:CalculatorUiTest.cs Github

copy

Full Screen

...42            var btn1 = GetButtonByName("1", window);43            var btn0 = GetButtonByName("0", window);44            var sumBtn = GetButtonByName("Sum", window);45            var resultBtn = GetButtonByName("Result", window);46            Mouse.Click(btn1.GetClickablePoint());47            Mouse.Click(btn0.GetClickablePoint());48            Thread.Sleep(500);49            var (left, right, result) = GetValues(window);50            Mouse.Click(right.GetClickablePoint());51            Mouse.Click(btn1.GetClickablePoint());52            Mouse.Click(btn0.GetClickablePoint());53            Thread.Sleep(500);54            Mouse.Click(sumBtn.GetClickablePoint());55            Mouse.Click(resultBtn.GetClickablePoint());56            Thread.Sleep(1000);57            Assert.Equal("20", result.Name);58            Stop();59        });60    }61    [Fact]62    public void DivisionByZero()63    {64        Retry.WhileException(() =>65        {66            Start();67            using var automation = new UIA3Automation();68            var window = _calculator.GetMainWindow(automation);69            var btn1 = GetButtonByName("1", window);70            var btn0 = GetButtonByName("0", window);71            var divideBtn = GetButtonByName("Divide", window);72            var resultBtn = GetButtonByName("Result", window);73            Mouse.Click(btn1.GetClickablePoint());74            Thread.Sleep(500);75            var (left, right, result) = GetValues(window);76            Mouse.Click(right.GetClickablePoint());77            Mouse.Click(btn0.GetClickablePoint());78            Thread.Sleep(500);79            Mouse.Click(divideBtn.GetClickablePoint());80            Mouse.Click(resultBtn.GetClickablePoint());81            Thread.Sleep(1000);82            Assert.Equal("", result.Name);83            Stop();84        });85    }86    [Fact]87    public void Multiply()88    {89        Retry.WhileException(() =>90        {91            Start();92            using var automation = new UIA3Automation();93            var window = _calculator.GetMainWindow(automation);94            var btn1 = GetButtonByName("1", window);95            var btn0 = GetButtonByName("0", window);96            var divideBtn = GetButtonByName("Multiply", window);97            var resultBtn = GetButtonByName("Result", window);98            Mouse.Click(btn1.GetClickablePoint());99            Thread.Sleep(500);100            var (left, right, result) = GetValues(window);101            Mouse.Click(right.GetClickablePoint());102            Mouse.Click(btn0.GetClickablePoint());103            Thread.Sleep(500);104            Mouse.Click(divideBtn.GetClickablePoint());105            Mouse.Click(resultBtn.GetClickablePoint());106            Thread.Sleep(1000);107            Assert.Equal("0", result.Name);108            Stop();109        });110    }111    [Fact]112    public void Subtract()113    {114        Retry.WhileException(() =>115        {116            Start();117            using var automation = new UIA3Automation();118            var window = _calculator.GetMainWindow(automation);119            var btn1 = GetButtonByName("1", window);120            var btn0 = GetButtonByName("0", window);121            var subtractBtn = GetButtonByName("Subtract", window);122            var resultBtn = GetButtonByName("Result", window);123            Mouse.Click(btn1.GetClickablePoint());124            Mouse.Click(btn1.GetClickablePoint());125            Mouse.Click(btn1.GetClickablePoint());126            Thread.Sleep(500);127            var (left, right, result) = GetValues(window);128            Mouse.Click(right.GetClickablePoint());129            Mouse.Click(btn1.GetClickablePoint());130            Mouse.Click(btn1.GetClickablePoint());131            Thread.Sleep(500);132            Mouse.Click(subtractBtn.GetClickablePoint());133            Mouse.Click(resultBtn.GetClickablePoint());134            Thread.Sleep(1000);135            Assert.Equal("100", result.Name);136            Stop();137        });138    }139    private bool Start()140    {141        if (!(_calculator?.Close() ?? true)) return false;142        _calculator =143            FlaUI.Core.Application.Launch(@"D:\dev\c#\Tests\Calculator\bin\Debug\net6.0-windows\Calculator.exe");144        return !_calculator.HasExited;145    }146    private bool Stop()147    {...

Full Screen

Full Screen

UnitTest1.cs

Source:UnitTest1.cs Github

copy

Full Screen

...9namespace FlaUIExamples10{11    static class AutomationElementsExtantion12    {13        public static void PerformLeftMouseClickByClickablePoint(this AutomationElement element)14        {15            Mouse.Click(element.GetClickablePoint(), MouseButton.Left);16        }17    }18    public class Example119    {20        private Window activityCenterWindow;21        private Application ndApp;22        private AutomationElement settingImage;23        private AutomationElement settingButton;24        [OneTimeSetUp]25        public void SetUp()26        {27            using (var automation = new UIA3Automation())28            {29                //var profiler = MiniProfiler.StartNew("My Profiler Name");30                //using (profiler.Step("Main Work"))31                //{32                //}33                var desktop = automation.GetDesktop();34                activityCenterWindow = desktop.FindFirstDescendant(c => c.ByText("NetDocuments ndOffice"))35                                                                         .AsWindow();36                activityCenterWindow.Click();37                var processStartInfo = new ProcessStartInfo(@"C:\Program Files (x86)\NetDocuments\ndOffice\ndOffice.exe");38                ndApp = Application.AttachOrLaunch(processStartInfo);39                activityCenterWindow = ndApp.GetMainWindow(automation);40                settingImage = activityCenterWindow.FindFirstDescendant(c => c.ByAutomationId("SettingsMenuIcon"))41                    ?? throw new NullReferenceException("Unable to find 'settings gear' button");42            }43        }44        [Test]45        public void FirstTest()46        {47            var processEventHandler = new ProcessEventHandler();48            processEventHandler.RegisterForProcessEvent();49            settingImage.PerformLeftMouseClickByClickablePoint();50            settingButton = WaitForElement(() => activityCenterWindow?.FindFirstDescendant(cf => cf.ByAutomationId("ExitMenuItem")).AsButton());51            settingButton?.WaitUntilClickable();52            settingButton?.Click();53            var startTime = DateTime.Now;54        }55        private T WaitForElement<T>(Func<T> getter)56        {57            var retry = Retry.WhileNull<T>(() => getter(), TimeSpan.FromMilliseconds(10000));58            return retry.Result;59        }60        public void ProcessExitedEventHandler(object sender, System.EventArgs e)61        {62            Console.WriteLine(DateTime.Now);63        }...

Full Screen

Full Screen

CalculatorStepDefinitions.cs

Source:CalculatorStepDefinitions.cs Github

copy

Full Screen

...23    {24        foreach (var symbol in number.ToString(CultureInfo.InvariantCulture))25        {26            var btn = CalculatorUiTest.GetButtonByName(symbol.ToString(), _window);27            Mouse.Click(btn.GetClickablePoint());28        }29        var values = CalculatorUiTest.GetValues(_window);30        Mouse.Click(values.right.GetClickablePoint());31    }32    [Given("the second number is (.*)")]33    public void GivenTheSecondNumberIs(double number)34    {35        foreach (var symbol in number.ToString(CultureInfo.InvariantCulture))36        {37            var btn = CalculatorUiTest.GetButtonByName(symbol.ToString(), _window);38            Mouse.Click(btn.GetClickablePoint());39        }40    }41    [When("the two numbers are (.*)")]42    public void WhenOperation(string operation)43    {44        var btn = CalculatorUiTest.GetButtonByName(operation, _window);45        Mouse.Click(btn.GetClickablePoint());46        btn = CalculatorUiTest.GetButtonByName("Result", _window);47        Mouse.Click(btn.GetClickablePoint());48        49        var values = CalculatorUiTest.GetValues(_window);50        _result = values.result.Name;51    }52    [Then("the result should be (.*)")]53    public void ThenTheResultShouldBe(string result)54    {55        _calculator.Kill();56        Assert.Equal(result, _result);57    }58}...

Full Screen

Full Screen

Mouse

Using AI Code Generation

copy

Full Screen

1using FlaUI.Core;2using FlaUI.Core.Input;3using FlaUI.UIA3;4using System;5using System.Collections.Generic;6using System.Linq;7using System.Text;8using System.Threading.Tasks;9{10    {11        static void Main(string[] args)12        {13            var application = Application.Launch(@"C:\Windows\System32\calc.exe");14            var automation = new UIA3Automation();15            var window = application.GetMainWindow(automation);16            var button = window.FindFirstDescendant(cf => cf.ByAutomationId("num3Button"));17            Mouse.Click(button);18            Console.WriteLine("Done");19            Console.ReadLine();20        }21    }22}23using FlaUI.Core;24using FlaUI.Core.Input;25using FlaUI.UIA3;26using System;27using System.Collections.Generic;28using System.Linq;29using System.Text;30using System.Threading.Tasks;31{32    {33        static void Main(string[] args)34        {35            var application = Application.Launch(@"C:\Windows\System32\calc.exe");36            var automation = new UIA3Automation();37            var window = application.GetMainWindow(automation);38            var button = window.FindFirstDescendant(cf => cf.ByAutomationId("num3Button"));39            Mouse.MoveTo(button);40            Mouse.Click();41            Console.WriteLine("Done");42            Console.ReadLine();43        }44    }45}46using FlaUI.Core;47using FlaUI.Core.Input;48using FlaUI.UIA3;49using System;50using System.Collections.Generic;51using System.Linq;52using System.Text;53using System.Threading.Tasks;54{55    {56        static void Main(string[] args)57        {58            var application = Application.Launch(@"C:\Windows\System32\calc.exe");59            var automation = new UIA3Automation();60            var window = application.GetMainWindow(automation);61            var button = window.FindFirstDescendant(cf => cf.ByAutomationId("num3Button"));62            Mouse.MoveTo(button

Full Screen

Full Screen

Mouse

Using AI Code Generation

copy

Full Screen

1using FlaUI.Core.Input;2using FlaUI.Core.WindowsAPI;3using FlaUI.UIA3.Input;4using FlaUI.UIA3.WindowsAPI;5using FlaUI.UIA2.Input;6using FlaUI.UIA2.WindowsAPI;7using FlaUI.UIA3.Input;8using FlaUI.UIA3.WindowsAPI;9using FlaUI.UIA2.Input;10using FlaUI.UIA2.WindowsAPI;11using System;12using System.Collections.Generic;13using System.Linq;14using System.Text;15using System.Threading.Tasks;16using System.Windows.Forms;17{18    {19        private static Mouse _instance;20        {21            {22                if (_instance == null)23                {24                    _instance = new Mouse();25                }26                return _instance;27            }28        }29        public void LeftClick()30        {31            Mouse.Instance.LeftButtonClick();32        }33        public void RightClick()34        {35            Mouse.Instance.RightButtonClick();36        }37        public void DoubleClick()38        {39            Mouse.Instance.DoubleClick();40        }41        public void MoveTo(int x, int y)42        {43            Mouse.Instance.Position = new System.Drawing.Point(x, y);44        }45        public void MoveTo(Point p)46        {47            Mouse.Instance.Position = new System.Drawing.Point(p.X, p.Y);48        }49        public void MoveTo(System.Drawing.Point p)50        {51            Mouse.Instance.Position = p;52        }53        public void MoveTo(Point p, int xOffset, int yOffset)54        {55            Mouse.Instance.Position = new System.Drawing.Point(p.X + xOffset, p.Y + yOffset);56        }57        public void MoveTo(System.Drawing.Point p, int xOffset, int yOffset)58        {59            Mouse.Instance.Position = new System.Drawing.Point(p.X + xOffset, p.Y + yOffset);60        }61        public void MoveTo(int x, int y, int xOffset, int yOffset)62        {63            Mouse.Instance.Position = new System.Drawing.Point(x + xOffset, y + yOffset);64        }65        public void LeftButtonDown()66        {67            Mouse.Instance.LeftButtonDown();68        }69        public void LeftButtonUp()70        {71            Mouse.Instance.LeftButtonUp();72        }

Full Screen

Full Screen

Mouse

Using AI Code Generation

copy

Full Screen

1using FlaUI.Core.Input;2using System;3using System.Windows.Forms;4{5    {6        public Form1()7        {8            InitializeComponent();9        }10        private void button1_Click(object sender, EventArgs e)11        {12            FlaUI.Core.Input.Mouse.Location = new System.Windows.Point(100, 100);13            FlaUI.Core.Input.Mouse.LeftDown();14            FlaUI.Core.Input.Mouse.LeftUp();15        }16    }17}

Full Screen

Full Screen

Mouse

Using AI Code Generation

copy

Full Screen

1var mouse = Automation.Mouse;2mouse.Click(MouseButton.Left, new Point(100, 100));3var keyboard = Automation.Keyboard;4keyboard.KeyPress(VirtualKeyShort.ENTER);5var app = FlaUI.Core.Application.Launch(@"C:\Windows\System32\calc.exe");6var window = app.GetMainWindow(Automation);7window.SetForeground();8var element = window.FindFirstDescendant(cf => cf.ByClassName("CalcFrame"));9var button = element.FindFirstDescendant(cf => cf.ByControlType(ControlType.Button).And(cf.ByName("1")));10button.AsButton().Invoke();11var app = FlaUI.Core.Application.Launch(@"C:\Windows\System32\calc.exe");12var window = app.GetMainWindow(Automation);13window.SetForeground();14var element = window.FindFirstDescendant(cf => cf.ByClassName("CalcFrame"));15var button = element.FindFirstDescendant(cf => cf.ByControlType(ControlType.Button).And(cf.ByName("1")));16button.AsButton().Invoke();17var app = FlaUI.Core.Application.Launch(@"C:\Windows\System32\calc.exe");18var window = app.GetMainWindow(Automation);19window.SetForeground();20var element = window.FindFirstDescendant(cf => cf.ByClassName("CalcFrame"));21var button = element.FindFirstDescendant(cf => cf.ByControlType(ControlType.Button).And(cf.ByName("1")));22button.AsButton().Invoke();23var app = FlaUI.Core.Application.Launch(@"C:\Windows\System32\calc.exe");24var window = app.GetMainWindow(Automation);

Full Screen

Full Screen

Automation Testing Tutorials

Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.

LambdaTest Learning Hubs:

YouTube

You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.

Try LambdaTest Now !!

Get 100 minutes of automation test minutes FREE!!

Next-Gen App & Browser Testing Cloud

Was this article helpful?

Helpful

NotHelpful