Please Enable JavaScript!
Gon[ Enable JavaScript ]

반응형

Visual C# Form WebBrowser 클래스 이용해 웹브라우저 만들기 (2)

 

개발환경 : window 7 64bit, Microsoft Visual studio 2012

 

1부에 이어서 2부에서는 화면에 셋팅한 ToolStrip

WebBrowser 에 기능을 넣어 보도록 합니다.

WebBrowser 클래스에서 현재 즐겨 쓰고 있는

브라우저의 모든 기능을 가지고 있으니 왠만한건

다 구현이 가능합니다.

 

화면셋팅이 끝났으므로 이제 각 버튼별로 기능을

넣어 보도록 합니다. 각각의 버튼을 하나씩 더블클릭해서

함수를 만듭니다.

 

뒤로가기

private void toolStripButton1_Click(object sender, EventArgs e)

{

    webBrowser1.GoBack();

}

 

앞으로 가기

private void toolStripButton2_Click(object sender, EventArgs e)

{

    webBrowser1.GoForward();

}

 

새로고침

private void toolStripButton3_Click(object sender, EventArgs e)

{

    webBrowser1.Refresh();

}

 

중지

private void toolStripButton4_Click(object sender, EventArgs e)

{

    webBrowser1.Stop();

}

 

홈으로

private void toolStripButton5_Click(object sender, EventArgs e)

{

    webBrowser1.GoHome();

}

 

텍스트 박스에 URL 페이지로 가기

private void toolStripButton6_Click(object sender, EventArgs e)

{

    webBrowser1.Navigate(toolStripTextBox1.Text);

}

 

이제 브라우저 상단에 상태정보를 셋팅하는

방법에 대해 알아보겠습니다. 이벤트는 DocumentCompleted 입니다.

웹브라우저 로딩이 끝났을 때 발생하는 이벤트 입니다.

더블클릭해서 함수를 만듭니다.

 

 

Text Form 상단에 있는 Status 정보 입니다.

브라우저에서 접속한 사이트의 제목을 webBrowser1.Document.Title

가져온후 자신이 원하는 정보를 넣습니다.

그리고 toolStripTextBox1 텍스트 박스에 URL 정보를 넣어서 재 셋팅합니다.

 

private void webBrowser1_DocumentCompleted(object sender,

WebBrowserDocumentCompletedEventArgs e)

{

    //webReady = true;

    this.Text = webBrowser1.Document.Title + " – 브라우저 샘플";

    toolStripTextBox1.Text = webBrowser1.Document.Url.ToString();

}

 

아래는 지금까지 만든 폼을 실행한 화면입니다.

URL 에 값을 넣고 오른쪽 버튼을 클릭해서 네이버로

접속해 보았습니다.

 

 

불편한 것을 하나 개선해 보겠습니다.

URL 페이지에서 Enter 를 치면 바로 사이트로

접속할수 있도록 하는 것입니다.

toolStript URL 입력 텍스트를 선택하고 Properties 이벤트

리스트로 갑니다. 그리고 KeyDown 이벤트 함수를

만듭니다.

 

 

함수가 만들어 졌으면 아래와 같이 입력합니다.

파라미터로 넘어온 KeyEventArgs 객체에서 keyCode 값이

Enter 인 것을 판단하고 맞다면 브라우저로 바로가기

버튼을 실행 하는 것입니다.

 

// URL key down

private void toolStripTextBox1_KeyDown(object sender, KeyEventArgs e)

{

if (e.KeyCode == Keys.Enter)

{

this.toolStripButton6_Click(sender, e);

}

}

반응형
Posted by 녹두장군1
,