NGMsoftware

NGMsoftware
로그인 회원가입
  • 매뉴얼
  • 학습
  • 매뉴얼

    학습


    C# C# .NET 매크로 프로그램 만들기. (웹 브라우저 컨트롤)

    페이지 정보

    본문

    안녕하세요. 엔지엠소프트웨어입니다. 오늘은 간단한 내용을 알아볼건데요. 바로~ 웹브라우저 컨트롤입니다. 이미 대부분의 기능이 셀레니움에 구현되어 있기 때문에 간단한 코딩만으로도 웹브라우저를 제어할 수 있습니다. 크게 어려운 내용은 없으니 아래와 같이 코딩을 추가하고 테스트 해봅시다.

     

    브라우저 컨트롤은 웹 연결이 필요하므로 웹 베이스 모델을 상속 받아야 합니다. 그리고, 창 위치를 설정하기 위해 IMouseTracker 인터페이스를 구현합니다.

    public class BrowserControlModel : Web.WebBaseModel, IMouseTracker

     

    속성은 몇개 없습니다. 브라우저 컨트롤이 창 크기와 창 위치거든요.

    [LocalizedCategory("Size")]
    [LocalizedDisplayName("SizeOption")]
    [LocalizedDescription("SizeOption")]
    [Browsable(true)]
    [DefaultValue(typeof(Definition.SizeOption), "None")]
    public Ai.Definition.SizeOption SizeOption { get; set; } = Definition.SizeOption.None;
    
    [LocalizedCategory("Size")]
    [LocalizedDisplayName("Size")]
    [LocalizedDescription("Size")]
    [Browsable(true)]
    [DefaultValue(typeof(Size), "0,0")]
    public Size Size { get; set; }
    
    [LocalizedCategory("Location")]
    [LocalizedDisplayName("Location")]
    [LocalizedDescription("Location")]
    [Browsable(true)]
    [DefaultValue(null)]
    [Editor(typeof(TypeEditor.MouseTrackingEditor), typeof(System.Drawing.Design.UITypeEditor))]
    public Point? Location { get; set; }

     

    실행 내용도 간단합니다. 사이즈 옵션에 따라서 처리하고, 창 이동 명령도 수행합니다.

    public override string? Execute(IPlayer player)
    {
        var id = base.Execute(player);
    
        var driver = player.Manager.WebDrivers[WebName];
    
        switch (SizeOption)
        {
            case Definition.SizeOption.Maximize:
                driver.Manage().Window.Maximize();
                break;
            case Definition.SizeOption.Minimize:
                driver.Manage().Window.Minimize();
                break;
            case Definition.SizeOption.FullScreen:
                driver.Manage().Window.FullScreen();
                break;
            case Definition.SizeOption.Size:
                driver.Manage().Window.Size = Size;
                break;
        }
    
        if (Location != null)
            driver.Manage().Window.Position = Location.Value;
    
        return id;
    
    }

     

    크기를 조정하는 옵션은 총 4가지입니다. 최소화, 최대화, 풀스크린과 크기입니다. 풀스크린은 웹브라우저에서 F11을 눌러서 전체 화면으로 만드는걸 의미합니다. 테스트를 해보면 쉽게 확인할 수 있는 기능들입니다. 그리고, 크기 조절 후 창이 이동할 수 있도록 디자인되어 있습니다. 창을 이동하고 싶으면 일단 창을 노말로 변경한 후 이동해야 합니다. 창이 최대화되어 있거나 최소화된 상태에서 이동은 크게 의미가 없기 때문입니다.

     

    아래 테스트는 웹사이트에 접속한 후 창을 최대화하고, 3초 후 창을 최소화하는 방법을 보여줍니다. 

     

     

    유튜브 추천, 구독, 좋아요 꼭 눌러주세요!

    개발자에게 후원하기

    MGtdv7r.png

     

    추천, 구독, 홍보 꼭~ 부탁드립니다.

    여러분의 후원이 빠른 귀농을 가능하게 해줍니다~ 답답한 도시를 벗어나 귀농하고 싶은 개발자~

    감사합니다~

    • 네이버 공유하기
    • 페이스북 공유하기
    • 트위터 공유하기
    • 카카오스토리 공유하기
    추천0 비추천0

    댓글목록

    등록된 댓글이 없습니다.