- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ラベルの文字表示)
ラベルの文字表示
このQ&Aのポイント
- 半角と全角が混じったファイル名の表示に問題がある場合、ラベルのサイズに収まらないと改行されてしまうことがあります。
- 場合によっては、ファイル名が途中で切れてしまい、全て表示されないことがあります。
- Windows98SEとVB6.0SP5の環境で試した結果、WordWrapやAutoSizeで問題を解決することはできませんでした。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
#1です。 オブジェクト増えてしまいますが、簡単な方法で。 Frameを枠なし必要なサイズにして、その中にLabelを貼り付けてください。 AutoSizeでLabelの大きさが変わっても、これなら見た目変わらないはず。 お試しください。
その他の回答 (1)
- Kuppycat
- ベストアンサー率50% (109/216)
回答No.1
Label.AutoSize = True Label.WordWrap = False の設定にすれば、一番希望に近い形になると思います。 お試しください。
質問者
お礼
お返事ありがとうございます。 既にその方式も試しておりまして、 たしかにWordWrapをTrueにすれば改行の問題は消えるのですが、 AutoSizeゆえに今度はレイアウト上の問題に突き当たってしまうのです。 ラベルの仕様にこんな問題があったとは今更ながら新鮮な驚きです。 kuppycatさんの案で考えると、ちょっとした発想の転換が必要ですが、 レイアウト上での工夫でも十分いけそうでした。 その他、今日のSEの会議ではTrimする長さを予め見積もって、コードで制御する という意見も出され、これが一番現実的な線として落ち着きそうです。 その他、ラベルの機能だけで解決する方法を知っている方がいれば どうぞ御指南下さい。 ラベルのサイズはできるだけ固定が望ましいです。
お礼
たびたび恐れ入ります。 コンテナを用いる方法も検討されましたが、 今回は表示するファイル数が多く、 (そのためレイアウト上の制約が発生しています) コンテナオブジェクトを追加するのなら 新規にクラスを作成するよう指示されています。 ただしラベルのAutosizeは他のオブジェクトにぶつかると そこで終了するようなので、背景色のラインオブジェクトを入れて それを障壁としてしまう手段はありそうです。 プログラマにはコードで文字列長を制御するよう既に指示を出しましたので こちらの方法はテストしておりません。 ご参考までに
補足
お礼に書いた内容ですが、その後誤りと判明しましたので訂正します。 Autosizeはオブジェクトにぶつかると、そこで終了すると書きましたが、 オブジェクトの背後に隠れていただけでした。 ラベルの伸縮で何とかしようとする場合、 kuppycatさんの方式が一番明瞭ですね。