C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[1]: webBrowserコントロールを使用して選択されているテキ


(過去ログ 47 を表示中)

[トピック内 2 記事 (1 - 2 表示)]  << 0 >>

■25663 / inTopicNo.1)  webBrowserコントロールを使用して選択されているテキ
  
□投稿者/ まぐねしうむ (44回)-(2008/09/24(Wed) 14:31:54)

分類:[C#] 

環境 VS2005 SP1

いつもお世話になっております。

http://www.codeproject.com/KB/edit/editor_in_windows_forms.aspx
http://bbs.wankuma.com/index.cgi?mode=red&namber=3416&KLOG=12
を参考にしてwebBrowser上で選択されたTxt領域を着色及び位置情報を取得して保存を
しようと思っております。

選択したTxtの着色は出来ているのですが、位置情報を取得する方法が分かりません。
どなたか教えて頂けないでしょうか?

・やりたい事

1Page目で下記の文章があったとして

 あいうえお あいうえお あいうえお
       ~~~~~~~~~~
       をマウスで選択したとします。
       選択後着色ボタンを押します。

この状態で他のPageに移動し、再度1Page目に戻ってきたときに
前回着色した2個目の「あいうえお」を自動的に着色したいと思います。

この場合、検索による位置の取得だと、前後の箇所もHitしてしまいます。
その為、重複したKeyWordがある場合でも着色処理を行う為に
Txtの位置情報等を取得する必要があると思うのですがどうすればよいでしょうか?
また、この機能を実現する方法があれば特に方法にこだわる必要はありません。

  ///背景色を設定する
   public void SelectBackColor()
   {
      Color color = EditorBackColor;
      if (ShowColorDialog(ref color))
         EditorBackColor = color;
   }

  ///背景色を設定する
    public Color EditorBackColor
    {
       get
       {
          if (ReadyState != ReadyState.Complete)
              return Color.White;
          return ConvertToColor(doc.queryCommandValue("BackColor").ToString());
       }
       set
       {
          string colorstr =string.Format("#{0:X2}{1:X2}{2:X2}", value.R, value.G, value.B);
          webBrowser.Document.ExecCommand("BackColor", false, colorstr);
          //ここで選択された位置情報を
          //mshtml.IHTMLTxtRange objRangeに保持したいのですが方法が分かりません。
       }
    }


以上よろしくお願いします。

引用返信 編集キー/
■25670 / inTopicNo.2)  Re[1]: webBrowserコントロールを使用して選択されているテキ
□投稿者/ まぐねしうむ (46回)-(2008/09/24(Wed) 15:07:10)
自己解決しました。

Txtを選択した状態で
 mshtml.IHTMLDocument2 doc = this.webBrowser.Document.DomDocument as mshtml.IHTMLDocument2;
 mshtml.IHTMLTxtRange obj =(IHTMLTxtRange)doc.selection.createRange();
を実行し、着色したい時には
 objRange.execCommand("BackColor", false, "BLUE");

で出来ました。

解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -