- ベストアンサー
C#を用いた簡易ブラウザ作成方法
- Visual studio 2005 C#で簡単なブラウザを作成する方法について知りたいです。
- ブラウザの基本機能として、URLの入力と移動、戻る・進むボタン、ホームに戻る機能、Google検索エンジンの呼び出しを追加したいです。
- Visual studio 2005のツールボックスでFormを作成し、ButtonやtextBox、WebBrowserなどのコントロールを配置しましたが、どのメソッドをどこに記述すれば良いか分かりません。Navigate()、GoBack()、GoForward()などのメソッドを使用すればよいのでしょうか。初心者のため、助けが必要です。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
これで変更できると思います。 http://www.atmarkit.co.jp/fdotnet/csharptips/002anchor/002anchor.html VC#2005はもっと楽な方法があるかも知れないですが。
その他の回答 (3)
- zwi
- ベストアンサー率56% (730/1282)
googleで検索ですか?結構難しい課題だと思いますが。 googleで検索するとブラウザで表示されるURLと同じ物を自分で合成してやる必要があります。 たとえばaaaaを検索すると下記の通りです(完全なURLだとこのサイトが勝手にリンクに書き換えてしまうのでワザと途中に1文字空白を入れてあります)。 http://www.google.co.jp/ search?hl=ja&q=aaaa&btnG=Google+%E6%A4%9C%E7%B4%A2&lr= この中で%E6とか謎の文字がでてますが、これは英数字以外が使えないURLで他の文字を使うために特殊な変換が掛かっているためです。これをURLエンコードと言います。 URLエンコード前のURLは以下の通りです。 http://www.google.co.jp/ search?hl=ja&q=aaaa&btnG=Google 検索&lr= URLエンコード/デコードを体験できるサイトがあるので自分でURLを組み立てて色々と実験してみてください。 http://www.tagindex.com/tool/url.html ちなみにgoogleは文字コードがutf-8らしいので、必ずutf-8の文字コードを指定してください。 URLエンコードは下記サイトを参考にしてください。 http://www.atmarkit.co.jp/fdotnet/dotnettips/212urlencode/urlencode.html 自前でやると結構面倒な処理なのですが用意されているメソッドで簡単に変換できるようです。 ちなみに自分でやると (1)URLの元の文字列を組み立てる。 (2)文字コードをutf-8に変換する。 (3)URLをURLエンコードする。 という手順を全部自分でやらないといけません。 文字コードについては今回は関係ないですが下記サイトを参考に。 http://ja.wikipedia.org/wiki/%E6%96%87%E5%AD%97%E3%82%B3%E3%83%BC%E3%83%89
お礼
親切にありがとうございます。 しかし、自分にはまだ難しいようです… 勉強します。 最後にもう少し聞きたいのですが、visual studioでFormにwebBrowserやtextbox,buttonコントロールを貼り付け、メソッドを記述し、デバッグで成功まではいけたのですが、デバッグした後そのFormを最大化(タイトルバーの最大化ボタンをクリック)すると、webBrowser、textBox、buttonなどがその最大化に合わせて移動しないのです。 つまり、webBrowserなどのコントロールを最大化に合わせて、大きくしたいのです。IEなどは最大化をするとそれに合わせた感じになりますよね。 最後にIEなどのブラウザではタイトルバーにそのwebページのタイトルが表示されますよね。このページの場合は「教えて!goo」でしょうか そのような表示も出来るようにしたいのです。 うまく説明できなくて申し訳ないのですが、教えていただければ幸いです。よろしくお願いします。
補足
回答へのお礼の中で質問したwebページのタイトル表示の件ですが this.Text = webBrowser1.DocumentTitle;によって解決できました。 しかし、最大化の件に関してはまだ解決出来ていないので、よろしくお願いします。
- zwi
- ベストアンサー率56% (730/1282)
C/C++の方でQNo.3315097「Visual C#2005 で簡単なブラウザを作成したいのですが」の質問をしていた人ですよね? 解決できていないなら質問を締め切らなくて良いですよ。 まず疑問に思ったのですが、C#の入門書は持っていますか?WEBサイトの大半は、最低限のC#の操作方法はわかっているものとして書かれています。 コントロールのメソッドを記述する方法がわからないのは、本を持っていないか持っている本に問題があると思います。この機会にぜひよい本を購入してください。 ちなにみ私はC++が専門なのですが試しにC#のメソッドを書いてみました。コントールのクリック時のイベントを追加してメソッドを書く手順はVisualStuido2005に慣れてないと少しわかり辛いかも知れませんね。 とりあえず、これで分かれば良いのですが。 http://itpro.nikkeibp.co.jp/article/lecture/20070219/262467/?ST=lecture ついでにC#のTIPSサイトも紹介しておきます。 http://hiro.wankuma.com/CS2005/index.htm
お礼
ありがとうございます。C#の学習を始めたばかりなのですが、急な課題でブラウザを作りなさいと言われたので困ってたのです。 入門書としては独習C#を持っていますが、Visual Studioは初めて使うのでよく分からないのです。 参考サイトからだいたい作れるようにはなり、textBoxにurlを入力しButtonをクリックすればサイトに飛べるようには出来たのですが、検索語入力してサイトに飛べるようにもしたいのです。 それはどのようにしたらいいでしょうか?
>C#はほとんど初心者に近く そう思うなら基礎から出直した方が無難なのでは? サンプルをいくつかこなして再挑戦するという話。
お礼
無事解決できました。何度も質問に答えてくださって本当に感謝してます。どうもありがとうございました。 また何かありましたらよろしくお願いします。