chippu
Sr. メンバー
オフライン
投稿: 79
I'm a llama!
|
|
教えてください!!
« 投稿日: 2005/07/01 - 11:52:37 » |
|
VBで、userform1.texbox1(selstart,sellength).FONTSTYLE="太字"といった感じで、 ユーザーフォームのテキストボックス上の選択した文字列を太文字にしたいのですが「型が一致しません」というエラーが出ます。アドバイス下さい★
|
|
|
|
Makoron
カタマリの王様!?
オフライン
投稿: 1277
SW2011SP5.0
|
|
Re:教えてください!!
« 返信 #1 投稿日: 2005/07/01 - 17:07:26 » |
|
chippuさんのコードに問題があるか、ないかはわかりませんが、 TextBoxではなく、RichTextBoxだと出来そうな気がします。
|
|
|
|
chippu
Sr. メンバー
オフライン
投稿: 79
I'm a llama!
|
|
Re:教えてください!!
« 返信 #2 投稿日: 2005/07/01 - 17:36:19 » |
|
richtextboxって何ですか??VBはじめたばかりなもんで。。。 どうやったらリッチテキストボックスを挿入できますか?
|
|
|
|
Makoron
カタマリの王様!?
オフライン
投稿: 1277
SW2011SP5.0
|
|
Re:教えてください!!
« 返信 #3 投稿日: 2005/07/01 - 18:43:32 » |
|
(1)VBのメニューから「プロジェクト」→「コンポーネント」を選択します。 (2)表示されたコンポーネントダイアログで、「コントロール」タブを選択します。 (3)リストボックスの中から、「Microdoft Rich Textbox Control 6.0(SP6)」を探しだしてチェックします。 (「6.0」や「SP6」は使用しているVBバージョンによって異なります。) (4)「OK」ボタンを押して、コンポーネントダイアログを終了します。 (5)すると、左側にあるツールボックス(コントロールがいっぱいのったやつ)にRich Textboxのコントロールが追加され、フォームに貼り付けることが出来るようになります。
リッチテキストボックスは、簡単に説明すると「文字書式を持つことが出来るテキストボックスです。 もっと具体的に言うと、 「Winodws標準のメモ帳が、普通のTextBox」 「windows標準のノートパッドが、RichTextBox」 を使っていると考えてください。
詳細な説明や、メソッド、プロパティと言った事は、ヘルプやWebで検索してみてください。
|
|
|
|
|
Makoron
カタマリの王様!?
オフライン
投稿: 1277
SW2011SP5.0
|
|
Re:教えてください!!
« 返信 #5 投稿日: 2005/07/04 - 08:37:53 » |
|
webmaster様、ご指摘ありがとうございます。
「ノートパッドはメモ帳じゃん!」って言われるところでした
|
|
|
|
chippu
Sr. メンバー
オフライン
投稿: 79
I'm a llama!
|
|
Re:教えてください!!
« 返信 #6 投稿日: 2005/07/04 - 09:16:39 » |
|
コンポーネントで「rich textbox」にチェックを入れ、適用・OKをしましたが、ツールボックスに追加されません。。。。 Solidworksでは使用不可とかではないですよね??
なんでだろ・・・・
|
|
|
|
chippu
Sr. メンバー
オフライン
投稿: 79
I'm a llama!
|
|
ちなみに
« 返信 #7 投稿日: 2005/07/04 - 09:49:25 » |
|
richtextboxの書式を利用してSolidWorksの注記にその書式をあてはめるにはどうしたいいんでしょうか?? 全てを同じ書式に統一したいのでなく、部分的に変更した書式をそのままあてはめたいのですが。。。
|
|
|
|
Makoron
カタマリの王様!?
オフライン
投稿: 1277
SW2011SP5.0
|
|
Re:教えてください!!
« 返信 #8 投稿日: 2005/07/04 - 10:48:54 » |
|
' 引用元: chippu 投稿日 '.timeformat('1120436199').' ' コンポーネントで「rich textbox」にチェックを入れ、適用・OKをしましたが、ツールボックスに追加されません。。。。 Solidworksでは使用不可とかではないですよね??
なんでだろ・・・・
|
画面のサンプルを添付します。 ツールボックスにアイコン(ボタン)が追加されていれば、後は普通のTextBoxと同様の操作で、フォームに貼り付けることが出来るはずです。
話がそれますが、VBA(SWのマクロ編集)では無くVB(製品として売られている)を使ってということで良いのですよね? (まあ、どちらでもほとんど同じ事ができるのですが...)
|
|
|
|
Makoron
カタマリの王様!?
オフライン
投稿: 1277
SW2011SP5.0
|
|
Re:ちなみに
« 返信 #9 投稿日: 2005/07/04 - 11:01:10 » |
|
' 引用元: chippu 投稿日 '.timeformat('1120438165').' ' richtextboxの書式を利用してSolidWorksの注記にその書式をあてはめるにはどうしたいいんでしょうか?? 全てを同じ書式に統一したいのでなく、部分的に変更した書式をそのままあてはめたいのですが。。。
|
APIヘルプを見てみました。 サンプルの「Change Text Format Example 」というのが使えそうですね。
大まかな流れはこんな感じになると思います。(実際に作った事が無いので参考程度です。) (1)RichTextBoxに入力された文字の情報を取得 (SelFontNameやSelBoldなどを使って) (2)SWAPIを利用して、Annotationオブジェクトを取得する。 (3)Annotationオブジェクトから、TextFormatオブジェクトを取得する。 (4)TextFormatオブジェクトに、RichTextBoxから取得した情報を設定する。
|
|
|
|
chippu
Sr. メンバー
オフライン
投稿: 79
I'm a llama!
|
|
Re:教えてください!!
« 返信 #10 投稿日: 2005/07/04 - 14:28:49 » |
|
コントロールの挿入は出来ました。先ほどのアドバイスどおりやってみたものの、 1つの注記アイテム内で、複数のフォーマットをマクロで反映させるのきびしいもんなんですか??
構造体を用いて、「文字・サイズ」の情報をもたせてそれをsettextメソッドで反映させようと考えたのですが、。。。。
|
|
|
|
Makoron
カタマリの王様!?
オフライン
投稿: 1277
SW2011SP5.0
|
|
Re:教えてください!!
« 返信 #11 投稿日: 2005/07/05 - 22:36:34 » |
|
サンプルを作ろうとしたのですが、Font関連は今まで取り組んだことがないので、なかなか複雑でした。 時間があれば作れるかもしれませんが、簡単にはできそうにないです
|
|
|
|
chippu
Sr. メンバー
オフライン
投稿: 79
I'm a llama!
|
|
Re:教えてください!!
« 返信 #12 投稿日: 2005/07/06 - 13:04:24 » |
|
' 引用元: Makoron 投稿日 '.timeformat('1120570594').' ' サンプルを作ろうとしたのですが、Font関連は今まで取り組んだことがないので、なかなか複雑でした。 時間があれば作れるかもしれませんが、簡単にはできそうにないです
|
ありがとうございます。感謝☆「文字サイズや太字・細字」の情報を構造体に情報をもたせ、textformatに適応は出来ました。でも、やっぱり、一つの注記の中で1文字ずつtextformatを適応させるのがわからない・・・ 手動で、注記の文字の一部分を選択して文字サイズを変えたりできるからきっとできるんだと思うんですが。。。。richtextboxみたいに、SWの注記でsel関数(sellengthとか)が使えればきっとできるんでしょうが。。。難しいんでしょうね
|
|
|
|
hisa
カタマリの王様!?
オフライン
投稿: 507
PANDA-Z!!
|
|
Re:教えてください!!
« 返信 #13 投稿日: 2005/07/07 - 13:46:34 » |
|
引用:手動で、注記の文字の一部分を選択して文字サイズを変えたりできるからきっとできるんだと思うんですが。。。。 |
APIヘルプを眺めてると、どうやら『複合注記』を使用すると似たようなものは出来るようですね。 しかし、↑(引用)の手順で作成したものはNote.GetTextAtIndex・Note.GetTextFontAtIndexや Note.GetHeightAtIndexで各書式情報は取得出来るのですが、複合注記扱いにはなっていない ようです… (Note.IsCompoundNote にて確認)
複合注記自体、複数の注記・ラインを座標指定で追加しひとつの注記(ブロックのようなもの?) として扱うものみたいなので、↑(引用)の手順で作成したものとは違うみたいですし。
もしかしたら、APIでは作成できないのかな 時間があったらもう少し調べてみますね
|
|
|
|
chippu
Sr. メンバー
オフライン
投稿: 79
I'm a llama!
|
|
Re:教えてください!!
« 返信 #14 投稿日: 2005/07/07 - 17:41:01 » |
|
' 引用元: hisa 投稿日 '.timeformat('1120711594').' '
APIヘルプを眺めてると、どうやら『複合注記』を使用すると似たようなものは出来るようですね。 しかし、↑(引用)の手順で作成したものはNote.GetTextAtIndex・Note.GetTextFontAtIndexや Note.GetHeightAtIndexで各書式情報は取得出来るのですが、複合注記扱いにはなっていない ようです… (Note.IsCompoundNote にて確認)
複合注記自体、複数の注記・ラインを座標指定で追加しひとつの注記(ブロックのようなもの?) として扱うものみたいなので、↑(引用)の手順で作成したものとは違うみたいですし。
もしかしたら、APIでは作成できないのかな 時間があったらもう少し調べてみますね
|
複合注記自体はどのように挿入したら良いのでしょうか? 本当にありがとうございます。 嬉しいです。
richtextboxでそれぞれの文字に与えた書式が、ワークス上でそのまま反映されるのなら複合注記でもなんでも構いません。 宜しくお願いします。
|
|
|
|