VBのコントロール(OCX)探しています.

リッチテキストボックスのようにフォントに色をつけたり、フォントを変えたり、フォントのサイズをかえたりできて、RTFでなくて、HTML形式のファイルを出力するようなコントロールってありませんか?

このQ&Aに関連する最新のQ&A

A 回答 (1件)

dhtmled.ocx

    • good
    • 0
この回答へのお礼

回答ありがとうございます。

DHTML Edit Control for IE5
ってやつですね。

使い方が良くわかりませんが、調べてみます。
では

お礼日時:2001/07/05 06:55

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QVBでリッチテキストボックス内印刷

VisualBasic2010でリッチテキストボックスにテキストファイルの内容を
StreamReaderで読み込んでいます。
その際、テキストの中身を基本とし変数で変換したものをリッチテキストに出力しています。
リッチテキストに表示されたもの(元のテキストファイルではダメ)を
印刷したいのですが、方法がわかりません。
ご教授ください。

Aベストアンサー

文字の印刷サンプルなんてたくさん転がってると思いますが。
ただ、リッチテキストを使用している理由が質問文内にないため、リッチテキストボックスでフォントや色を自由にアレやコレや変えまくった結果を見た目そのままに印刷されることを期待しているのか、単にプレーンな文字列が印刷されることを期待しているのかは不明。
http://dobon.net/vb/dotnet/graphics/printtext.html

Qカスタムコントロール作ってます(VB.NET)。VB.Net にVB.6のActiveX作成時にあったプロパティページ作成ができないようですが

タイトルどうりです。VBNETのカスタムコントロールでデザインモードにおけるフォームつまりプロパティページやビジュアルにプロパティボックスから設定できるようにしたいのですが、どうしたらできるでしょうか?VB6ではできたのですが、(Activexコントロール)。

よろしくお願いします。

Aベストアンサー

通常のプロパティと同じように、プロパティ ウィンドウに項目を表示して設定できるようにする必要があります。
具体的には、
1. カスタム コントロールのクラスに外部公開する Property プロシージャを作成して、内部で値を保存できるようにする。
2. そのプロパティの宣言部分で、プロパティ ウィンドウに表示するように指示する属性値を設定する。

こんな感じです。

参考URL:http://www.atmarkit.co.jp/fdotnet/winexp/winexp02/winexp02_01.html

Qリッチテキストボックス内のフォント変更

VB.NETプログラミングしています。
基礎的なことだと思うのですが、
調べてもわかりませんのでご教示ください。
RichTextBoxを使ってテキストエディタを作っています。
このリッチテキストボックス内でキーダウンイベントを発生させ、
選択されている文字のフォント変更(例えばボールド体やイタリック体、下線付加)したいのですができません。
ワードのような機能を付加したいだけなのですが、うまくいきません。
つまり、
If e.Control = True Then
 With RichTextBox1
  Select Case e.KeyCode
    Case Keys.B
  (選択されている文字をボールド体にして、
   ボールド体の部分は非ボールド体にする)
End Select
End With
EndIf
の中の
「選択されている文字をボールド体にして、ボールド体の部分は非ボールド体にする」という処理ができません。
ご存知の方、ご教示ください。

Aベストアンサー

これでできませんか?

' Visual Basic
RichTextBox1.SelectionFont = New Font("Tahoma", 12, FontStyle.Bold)
RichTextBox1.SelectionColor = System.Drawing.Color.Red

Qコントロール配列のテキストボックスの大きさの自動調整

日本語に対して英訳を入力し正誤を判定するプログラムを作っています。
答えの英文(1文ずつ)を入力するテキストボックスを、単語数分だけコントロール配列で自動表示したいのですが、その際にテキストボックスを単語の文字数に適した大きさにするやり方がわかりません。
(例 I am a girl.が答えなら、テキストボックスを4つ表示し、
「I」に該当するテキストボックスは1文字分の大きさで表示)
英文から単語数、単語の文字数を計算する部分はだいたいわかりますが、親切な方がいらっしゃいましたらその部分もお願いいたします。
初心者なので簡単な質問かもしれませんが、宜しくお願いします。

Aベストアンサー

Option Explicit

Dim Rdata As String
Dim Moj_A As String
Dim Dummy As Integer
Dim Mojsuu As Integer
Dim Sw As Integer
Dim Moj As String
Dim N As Integer
Dim my_Range As Integer

'
'これを テストするには、テキストボックスを6個 配列にして

'コマンドボタンを 1個 配置する必要が、あります。
'


Private Sub Command1_Click()
Mojsuu = Len(Rdata)
N = 0
Moj = Rdata
Dummy = 1
Sw = 1

Do
If Dummy = Mojsuu Then
N = N + 1
Moj_A = Mid(Rdata, Sw, Dummy - (Sw - 1))
Call Txit_c(Moj_A, N)
Exit Do
End If

If Moj = " " Then
If Sw = 1 Then
N = N + 1
Moj_A = Left(Rdata, Dummy - 2)
Sw = Dummy
Call Txit_c(Moj_A, N)
ElseIf Sw <> Mojsuu Then
N = N + 1
Moj_A = Mid(Rdata, Sw, Dummy - (Sw + 1))
Sw = Dummy
Call Txit_c(Moj_A, N)
End If

End If

Moj = Mid(Rdata, Dummy, 1)
Dummy = Dummy + 1

Loop

End Sub

Sub Txit_c(Moj_A As String, N As Integer)
my_Range = Len(Moj_A)

Form1.ScaleMode = vbCharacters

Text1(N - 1).Text = Moj_A
Text1(N - 1).Width = my_Range + 0.5 'my_Range + 1の 1 は、Widthのoffsetで 微調整(工夫)が必要です。

Form1.ScaleMode = vbPixels

For N = 0 To N - 1
Text1(N + 1).Left = Text1(N).Left + Text1(N).Width + 10 'Text Box間の間隔を設定 現在は、Offset=10
Next

End Sub


Private Sub Form_Load()
Rdata = "Antonio Pantoja, Domingo Cura & Jorga" ' TEST用文字列です。
End Sub

Option Explicit

Dim Rdata As String
Dim Moj_A As String
Dim Dummy As Integer
Dim Mojsuu As Integer
Dim Sw As Integer
Dim Moj As String
Dim N As Integer
Dim my_Range As Integer

'
'これを テストするには、テキストボックスを6個 配列にして

'コマンドボタンを 1個 配置する必要が、あります。
'


Private Sub Command1_Click()
Mojsuu = Len(Rdata)
N = 0
Moj = Rdata
Dummy = 1
Sw = 1

Do
If Dummy = Mojsuu Then
N = N + ...続きを読む

QAPI32 コントロールのEditテキストの文字列の取得・出力について

外部アプリケーションの子ウィンドウ(Edit)のテキストが取得できません。
ご指導お願いいたします。

■やりたいこと
外部アプリケーションのEditの文字列を取得(変数に代入まで)
取得したい文字列数は、半角8桁程度です。

開発環境 BVA

●取得済みの情報
外部アプリケーションの親ウィンドウのハンドルを取得済み。
特定の子ウィンドウのコントロールIDを取得済み。

lpStringの使い方が全く分かっていません。
nMaxCountも分かりません。

hDlgには親ウィンドウのハンドルが入っています。

<関数の宣言>
Declare Function GetDlgItemText Lib "user32" Alias "GetDlgItemTextA" _
(ByVal hDlg As Long, ByVal nIDDlgItem As Long, ByVal lpString As String, ByVal nMaxCount As Long) As Long

Sub GetTextTest()

nIDDlgItem = "000514F6" 'EditのコントロールID
lpString = Space(10) '分かっていないのですが調べてみてなんとなく

GetText1 = GetDlgItemText(hDlg, nIDDlgItem, lpString, 256)

End Sub

これで、GetText1にEditのテキストが取得できると思っているのですが、
根本的に間違っている気もします。

実行以前に、型が一致しませんと出てしまいます。
型を修正しても、GetText1にはエラーの0が出力されるのではと思っております。


また、別件なのですが、
親ウィンドウの中に子ウィンドウ1があって、
子ウィンドウ1の中に子ウィンドウ2(Edit)があった場合
親ウィンドウのハンドルと、子ウィンドウ2のコントロールIDが
分かっていれば、Editの文字列は取得できるのでしょうか?

外部アプリケーションの子ウィンドウ(Edit)のテキストが取得できません。
ご指導お願いいたします。

■やりたいこと
外部アプリケーションのEditの文字列を取得(変数に代入まで)
取得したい文字列数は、半角8桁程度です。

開発環境 BVA

●取得済みの情報
外部アプリケーションの親ウィンドウのハンドルを取得済み。
特定の子ウィンドウのコントロールIDを取得済み。

lpStringの使い方が全く分かっていません。
nMaxCountも分かりません。

hDlgには親ウィンドウのハンドルが入っています。

...続きを読む

Aベストアンサー

まずはGoogleでGetDlgItemTextを検索しましょう。
http://www.activebasic.com/help_center/Pages/API/Window/DialogBox/GetDlgItemText.htm

えー違ってる箇所を指摘します。
nIDDlgItemの型はLongなのに、なんで
nIDDlgItem = "000514F6" 'EditのコントロールID
と文字列を入れているのですか?
16進数で入れるには、VBであれば&H000514F6です。
あとGetDlgItemText関数が返す値は取得した文字数です。
なので当然、GetText1に入れるのは間違ってます。lpStringに取得した文字列が入るのですよ。

とりあえずサンプル
Dim bufStr As String
Dim retStr As String
Dim nIDDlgItem As Long
' コントロールID
nIDDlgItem = &H000514F6
' バッファの用意
bufStr = String(255, vbNullChar)
' エディットボックスの文字列を取得する
If GetDlgItemText(hWnd, nIDDlgItem, bufStr, Len(bufStr)) > 0 Then
 retStr = Left$(bufStr, InStr(bufStr, vbNullChar) - 1)
End If
' retStrが目的の文字列。

まずはGoogleでGetDlgItemTextを検索しましょう。
http://www.activebasic.com/help_center/Pages/API/Window/DialogBox/GetDlgItemText.htm

えー違ってる箇所を指摘します。
nIDDlgItemの型はLongなのに、なんで
nIDDlgItem = "000514F6" 'EditのコントロールID
と文字列を入れているのですか?
16進数で入れるには、VBであれば&H000514F6です。
あとGetDlgItemText関数が返す値は取得した文字数です。
なので当然、GetText1に入れるのは間違ってます。lpStringに取得した文字列が入るのですよ。

と...続きを読む


このカテゴリの人気Q&Aランキング

おすすめ情報