許せない心理テスト

ピクチャーボックスのprintメソッドで表示する文字列ですが、
文字間の幅の設定は可能でしょうか?

A 回答 (4件)

No.3の補足です。


SetTextCharacterExtraの宣言は

Private Declare Function SetTextCharacterExtra Lib "gdi32" (ByVal hdc As Long, ByVal nCharExtra As Long) As Long

にして下さい。
APIビューアで持ってきたらエラーになってしまいました。
私のプログラムだけ?

後、PTの単位はピクセルのようです。すみません。
    • good
    • 0
この回答へのお礼

回答してくださった皆様ありがとうございました。解決いたしました。

>APIビューアで持ってきたらエラーになってしまいました。
私もです。
SetTextCharacterExtraAがGDIにみつからないとかいうエラーだったかと思います。

お礼日時:2002/08/06 23:04

API関数のSetTextCharacterExtraでできると思います



Public Declare Function SetTextCharacterExtra Lib "gdi32" Alias "SetTextCharacterExtraA" (ByVal hdc As Long, ByVal nCharExtra As Long) As Long

SetTextCharacterExtra hhdc, PT
   hhdc:ピクチャーボックスのhDC
   PT:ピッチ数(多分twip)

TextOut(Api)でもprint文でもできます
    • good
    • 0
この回答へのお礼

おお!そんなAPIがあったのですね。
早速使ってみたく存じます。
御回答有難うございます。

お礼日時:2002/08/06 15:18

文字間の幅の設定はないと思います。


でも自力でやれば簡単です。

Private Sub Picture1_Click()

Dim i As Long
Dim s As String

s = "文字列を100twip間隔に表示します"
For i = 1 To Len(s)
Picture1.Print Mid(s, i, 1);
Picture1.CurrentX = Picture1.CurrentX + 100
Next
End Sub
    • good
    • 1
この回答へのお礼

やはり関数でも作って一文字ずつ表示させるしかないのでしょうか。
ご回答ありがとうございました。

お礼日時:2002/08/05 16:36

こんにちは。

maruru01です。

Win32APIのCreateFont関数を使用すれば出来ると思います。

http://www.microsoft.com/japan/developer/library …
http://www.bcap.co.jp/hanafusa/
[画面・文字等の表示]→[各種フォントを任意の角度で表示する]
など。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
CreateFontで平均文字幅は指定できるようですが、
文字間の幅を変えることは可能なのでしょうか?

お礼日時:2002/08/05 14:47

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


おすすめ情報