VB6.0を使用しています。
下記のようにテキストボックスを動的配置した際にボックスの高さを変更したいのですが、文字の大きさ等に依存しているよう?で変更できません。
よく似た質問でMultiline をTrueにするような物があり、試してみましたがエラーとなってしまいます。
もう少し小さくしたいのですが何を変更・追加すればよいのでしょうか?
どなたかご教授願います。
Private Sub Form_Load()
Dim add_tbox As TextBox
Set add_tbox = Controls.Add("VB.textbox", "text")
With add_tbox
.Text = "aaa"
.Height = 240 '---テキストボックスの高さ
.Left = 2270
.Top = 1700
.Width = 350
.FontSize = 9
'.MultiLine = False ---これを追加するとエラー"値の取得のみ可能なプロパティに値を設定する事はできません"
.Visible = True
End With
MsgBox add_tbox.Height '---テキストボックスの高さ確認(270となっている)
End Sub
No.1ベストアンサー
- 回答日時:
>文字の大きさ等に依存しているよう?で変更できません。
これに気づいているのなら、もう一歩。
裏技的ですが、Heightを指定する前にフォントサイズを一度小さい値にしてみましょう。
例えば
.FontSize = 2
.Height = 240
.FontSize = 9
これでうまくいくはずです。
面倒くさいですが、こういった回避法しか無さそうです(´・ω・`)
なるほど、一旦フォントを小さくして高さを指定すると可能なんですね。
そのような方法は、まったく考えもつきませんでした。
試して見たところ、この方法で思っていた通りの高さに調整するができました。(感動です!)大変ありがとうございました。
No.2
- 回答日時:
API関数を利用すれば以下のような感じで出来ます。
(単位が変わってしまいますが。。。)
Private Declare Function MoveWindow Lib "user32" (ByVal hwnd As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal bRepaint As Long) As Long
Private Sub Form_Load()
Dim add_tbox As TextBox
Set add_tbox = Controls.Add("VB.textbox", "text")
Call MoveWindow(add_tbox.hwnd, 10, 20, 35, 10, 1)
add_tbox.Text = "aaa"
add_tbox.Visible = True
MsgBox add_tbox.Height '---テキストボックスの高さ確認(270となっている)
End Sub
ありがとうございます。
回答頂いたコードで高さを規定値より低くできたのは確認しましたが、何分初心者の物で現段階では、API関数とは?といった状態です。
でも、いろんな方法を教えて頂けることは非常にありがたいです。
このように具体的にコードを書いて頂けると、コードの意味を一つずつ調べ、どのような内容か確認できるので、今後の為に参考にさせて頂きたく思います。
ご回答、本当にありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 【VBA】写真の貼り付けコードがうまく機能しません。 5 2022/09/01 18:43
- Visual Basic(VBA) エクセルVBAで以下のようなコードを書いたらエラーになりました。何処が間違っているの教えて? 1 2023/02/10 18:30
- Visual Basic(VBA) ①ExcelVBAでカレンダーを作り、別のユザーフォームで日付を入力したいのですがエラーになります。 1 2023/02/17 18:39
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Excel(エクセル) 【エクセルマクロ】既に開いているIEの、サイズや表示位置を変更するには 4 2022/12/01 22:57
- Visual Basic(VBA) 【VBA】写真の縦横比を変えずに貼り付ける 5 2023/06/13 11:42
- Excel(エクセル) 【マクロ】スクショ印刷がうまく動かない件 5 2022/12/06 17:37
- Visual Basic(VBA) 【追加】ファイルを閉じてダイアログで保存した時だけ処理の実行をする 3 2022/03/23 15:43
- Visual Basic(VBA) EXCEL VBAにて動的にCheckBOXを複数作成し、同BOXにイベントを追加したい 1 2023/03/16 07:05
- Visual Basic(VBA) ユーザーフォームの書き出しで追加のご相談 ユーザーフォームの値をシートに書き出す際、コードが表示され 2 2022/08/05 10:58
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
TextAreaでの文字の色
-
java junit list同士の比較方法
-
ArrayListの使い方について(初...
-
JavaのswingでCardLayoutの画面...
-
javaで文字数制限するには?
-
JButton-背景の透明化
-
連番をオブジェクト名の最後に...
-
JFrameとJPanelの最大化について
-
Buttonを押すと画像が表示され...
-
JDialogを閉じた時の処理
-
TABキーの検出
-
JPanelの切り替えと再描画
-
JTableの列ヘッダ
-
質問 No.321331 「ノードの削除...
-
整数を好きなだけ入力し、個数...
-
Javaでお絵描きソフトを作りた...
-
EXECLの行を削除
-
あるコンボボックスを選択する...
-
Log4jで機能毎に別ファイルへ出...
-
flush()とclose()について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
java junit list同士の比較方法
-
javaで文字数制限するには?
-
JTableの列ヘッダ
-
TextAreaでの文字の色
-
最後の行に移動するには?
-
【Swing】JPanel クラス外から...
-
4択クイズでのランダム出題の...
-
コンパイルエラー <identifier...
-
JPanelの重ね方/OverlayLayout他
-
JPanelの切り替えと再描画
-
エラーで式の開始が不正ですと...
-
JTable の 列幅を個別に設定す...
-
VB6.0でのTextboxの高さ変更
-
ボタンクリック後パネルを再描...
-
ArrayListの使い方について(初...
-
JavaでのSwingを使った簡易電卓...
-
連番をオブジェクト名の最後に...
-
あるコンボボックスを選択する...
-
Buttonを押すと画像が表示され...
-
KeyListenerの使い方について
おすすめ情報