- ベストアンサー
VB .net コントロールのプロパティ設定方法
MARU4812の回答
私は、デフォルト設定から変更する場合は、主にコードで設定しています。 ただ、デザイナで変更しても、InitializeComponent 内に自動でコードが 書かれます。そういった意味では、プロパティウインドウで設定しても 自分でコードを書かないだけで、コードで設定しているとも言えます。 ところが、この自動で書かれているコードには独自のルールがあるようで、 プロパティのデフォルト値と同じであると省略されたり、コードに書かれる コントロールの順も不定な部分があります。また、開発環境の解像度などの 影響を受けて、プロパティ値が自動調整される事があります。 そういった諸々の事情から、企業で開発するプロジェクトでの保守性や、 別プロジェクトへの再利用性に劣ります。 自前のコードで書いてあると、そこが自動で変更される事は無い(実行時に 調整される事はあっても)ので、意図して値を変更した事が明確に履歴管理 でき、また、そのコードで1回十分にテストしておけば、そのまま安心して 他プロジェクトに流用できます。また、複数プロジェクトで、どのプロパティ を流用して、どのプロパティは流用しなかったか(つまり、どの機能を実装し、 どの機能は実装しなかったか)といった差分比較も簡単になります。 少し特殊な事例としては、画面上に規則正しくコントロールが並んでいる時に その位置や初期値を関数で設定した事があります。一度設定するだけなら デザイナ上で設定しても手間は変わらないか、むしろ関数化するほうが時間が 掛かるかもしれませんが、何度も調整したり、変更が予想される場合は 少しの変更で調整できて便利でした。 以上のような経験から、 デザイナ上で調整するのは、位置と、タブ順・コントロール名くらいで、 他のプロパティは基本的には自前のコードで設定するようになりました。
関連するQ&A
- [VB6.0]フォーム上に配置したコントロールのフォントサイズが変えられない
はじめまして。 VB6.0のアプリケーションウィザードを使用してフォームをいくつか作りました。 ウィザード終了後、これらのフォーム上に配置されたラベルなどのfontプロパティ を操作してフォントサイズを変えたいのです。フォームのデザイン上はフォントサ イズを変えることが出来るのですが、実行すると、"コントロールのfontプロパティ のfontサイズ"ではなく、"フォームのfontプロパティのfontサイズ"で統一されて しまいます。つまり、コントロール毎の値は無視されて、フォームの値で統一され てしまうのです。 exe形式にコンパイルしても同じでした。どこかしらのプロパティをいじるのだと 思うのですが、どなたかわかる方はいらっしゃいますか? よろしくお願いします。 (環境)Windows98SE+VB6.0+SP5.0
- 締切済み
- Visual Basic
- 【VB2005】コントロールのサイズ自動取得
現在、画面の大きさにより、ラベル、テキストボックス等の コントロールを動的に配置してまして、 画面サイズを適当に変えると、 コントロールの大きさが自動で変更されるのですが、 ボタンを押して、新たにコントロールを配置したときに、 画面が大きい画面なのに、自分で決めた値をそのままコントロールにプロパティを代入して作るために、 画面にあわないコントロールサイズになります。 倍率が判らないために、うまく今の画面にマッチしたコントロールの プロパティ(大きさ、フォント)が設定できません。 どういう方法で自動取得のコントロールを追加できるか、 お知恵を貸してください。
- ベストアンサー
- Visual Basic
- VBのコントロールについて
VB6で教えてください。 VBのコードを書くメインウィンドウの右端にプロジェクトウィンドウとかプロパティウィンドウとかフォームレイアウトウィンドウとかありますが、あのフローティングウィンドウは何と言うオブジェクト(コントロール?、コンテナ?)なのでしょうか? 要は、ああいったマウスで任意にサイズを変更できるようなのをつけて、そこにタブコントロールを載せたいと思っています。よろしくお願いします。
- ベストアンサー
- Visual Basic
- カスタムコントロール作ってます(VB.NET)。VB.Net にVB.6のActiveX作成時にあったプロパティページ作成ができないようですが
タイトルどうりです。VBNETのカスタムコントロールでデザインモードにおけるフォームつまりプロパティページやビジュアルにプロパティボックスから設定できるようにしたいのですが、どうしたらできるでしょうか?VB6ではできたのですが、(Activexコントロール)。 よろしくお願いします。
- ベストアンサー
- Visual Basic
- ユーザーフォームのプロパティをVBAで設定したい
いつも楽しく勉強させていただいております。 Excelのユーザーフォームを使い始めたところです。 コントロールのプロパティの設定を細かいVBAで行いたいのですが、方法がわかりません。 たとえばラベルの位置をそろえたいので 黒いラベル2.Left = 黒いラベル1.Left 黒いラベル3.Left = 黒いラベル1.Left といったコードを書いてUserForm_Initialize()で実行してみたのですが、フォームを閉じると元の値に戻っています。 どうすれば黒いラベル2と黒いラベル3の左端を黒いラベル1と同じにできますか。
- ベストアンサー
- その他MS Office製品
- 【VB 2005】継承したコントロールにプロパティを追加するには?
System.Windows.Forms.Labelを継承して 背景や、フォントを設定することは出来るのですが これをプロパティを使用して個別に設定する方法を探しています。 例えば LabelSizeというプロパティを作成し Small、Mediam、Largeから選択された 値によってコントロールの大きさを変えたいと思っています。 よろしくお願いします。
- ベストアンサー
- Visual Basic
- ユーザーコントロールのプロパティについて
こんにちは、palbanです。 グリッドを使用したユーザーコントロールを作成し そのグリッドに文字が出力されるようプロパティを 作成しました。 そしてそのコントロールの作成したプロパティに コード内で値を設定しても全く文字がでてきません。 プロパティウィンドウで設定すると正常に文字が 出てきます。また、標準でついているプロパティを コード内で使用しても正常に値が入ります。 なんとか作成したプロパティもコード内で使用したい のですが、ご存知の方ご教授願いします。
- 締切済み
- Visual Basic
- ラベルに「コントロールソース」を設定することは不可能でしょうか?
単票形式のフォームのレコードソースに紐付くコントロールソースを ラベルに設定したいのですができません。 ハイパーリンクをテキストボックスではなく ラベル上に表示したいです。 テキストボックスのプロパティには「コントロールソース」があるのですが ラベルに「コントロールソース」はありません。 設定することは不可能でしょうか? VBAでも可能なら教えてください。 よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- VB2005 コントロールの背景を透過
フォームにバックグラウンドイメージを設定しているのですが その上にグループボックスやラベルを貼り付けたら、フォームのイメージが隠れてしまいます。 VB6はコントロールに背景を透過にするプロパティがあったので探してみたのですが、見当たりません。 おそらくVB2005でも簡単に透過設定できると思うのですが… グループボックスとラベルを透過に設定する簡単な方法はありますでしょうか? (コントロールの継承になってくる?) また、これはおそらく無理だと思うのですが ピクチャーボックスで表示されている画像の透過部分にも フォームの背景イメージを表示させる、ということは可能でしょうか? よろしくお願い致します。
- ベストアンサー
- Visual Basic
- ラベルの文字列の長さが変わったときに、ラベル位置を自動で変更する方法
ラベルの文字列の長さが変わったときに、ラベル位置を自動で変更する方法 環境:Visual Studio 2008 (C#)、Windows 7 Professional (x64) フォーム上にラベルを配置し、AutoSizeをTrue、AnchorをRightに設定すると、ラベルはフォームの右端に位置するように自動で位置を変更してくれます。 しかし、ラベルの内容を今より長い文字列に設定すると、ラベルの内容はフォームの右端をはみ出してしまい、ラベル全体に対してフォームの右端になるように配置してくれません。 いい方法がございましたら、お教えください。 どうぞよろしくお願いいたします。
- ベストアンサー
- C・C++・C#
お礼
とても丁寧なご回答ありがとうございました! コントロールプロパティをコードで記述する必要性、理由がよく分かりました! 何事も保守性・生産性を高める為の手間を惜しむなということですねっ! 精進します!