クリエイターの教科書

Excel, ChatGPT, Stable Diffusion, Visual Studioなどの教科書

【VisualStudioの教科書】C#のボタンとは?使い方は?

VisualStudioのフォームアプリケーションで最もよく使われる部品の1つがボタンでしょう。いろんなアクションを実行するためのトリガーとなるものです。

ボタンは透明にしたり、アイコン+文字にしたりといろんな工夫ができます。便利な使い方についてもマスターしておきましょう。

C#のボタンとは?

Button

C#でフォームアプリケーションを作る場合、ボタン用の部品が用意されています。

 

フォーム上にボタンを配置後、ボタンにプログラムを書き込めば、ボタンで何かのアクションを実行させるアプリがつくれます。

 

C#のボタンの使い方

ボタンを配置する

ツールボックスでButton(ボタン)を選びます。

f:id:apicode:20200818102225p:plain

 

フォー上でドラッグすればボタンが生成されます。

f:id:apicode:20200818102228p:plain

 

ボタンをダブルクリックするとクリック用のイベントが書けるようになります。

f:id:apicode:20200818102230p:plain

 

試しに文字を表示するダイアログボックスを出すというプログラムを書き込みます。

private void button1_Click_1(object sender, EventArgs e)
{
 MessageBox.Show("おっはー");

}

 

 

 

実行してボタンを押すと、このようにダイアログが無事表示されました。

f:id:apicode:20200818102328p:plain

 

 

イベントの種類を変える

ボタンのプロパティで「稲妻アイコン?」を押すと、利用できるイベントの一覧が出ます。

ダブルクリックすると、そのアクションに応じたプログラムを書くためのコード画面となります。

f:id:apicode:20200818102732p:plain

 

Clickとは、マウスボタンを押して一定時間内に離す動作のイベントです。

これはマウスボタンを押しただけでは反応しません。また押したあと長めに時間を置いてからボタンを離しても反応はしません。

 

マウスダウンで実行

もしボタンを押した段階ですぐ実行したいプログラムを書くときはmousedownというイベントのアクションで実行します。

private void button1_MouseDown(object sender, MouseEventArgs e)
{
 MessageBox.Show("おっはー");
}

 

マウスアップで実行

ボタンを離した段階で実行するならmouseupというイベント用のアクションを記述します。

private void button1_MouseUp(object sender, MouseEventArgs e)
{
 MessageBox.Show("おっはー");
}

 

ボタンのプロパティ

ボタンの色

BackColorで変更できます。

f:id:apicode:20210424092431p:plain

 

するとこんな感じ。

f:id:apicode:20210424092433p:plain

 

ボタンの文字を大きくする

Fontプロパティで文字のサイズを変更できます。

f:id:apicode:20210424092650p:plain

 

この通り大きくすることもできます。

f:id:apicode:20210424092651p:plain

 

アイコン付き

アイコンを指定します。

簡単なのはImageListを使って画像を複数登録しておき、ImageIndexで何番目か指定するという方法でしょう。

f:id:apicode:20200818145310p:plain

 

あとは「TextImageRelation」プロパティを変更。「ImageAboveText」なら画像が文字の上になります。

f:id:apicode:20200818145312p:plain

 

設定するとこんな感じ。

f:id:apicode:20200818145314p:plain

 

「TextImageRelation」プロパティを変更。「TextAboveImage」なら文字が上で画像が下になります。

「ImageBeforeText」を選ぶと、下のように画像が左側になります。

f:id:apicode:20200818145540p:plain

 

 

ボタン内の画像サイズを変更

「backgroundImage」プロパティに画像を指定することで画像をボタンに張り付ける方法もあります。

f:id:apicode:20200818151228p:plain

 

「backgroundImageLayout」プロパティで「Stretch」を指定すると、ボタンの大きさを変更するとそれにフィットするように画像も伸縮します。

f:id:apicode:20200818151237p:plain

 

 

透明ボタン

透明なボタンにすると、例えばフォームの任意の場所をクリックしたときに反応するプログラムを作ることができます。ただしボタンでVisibleプロパティをオフにするとボタンの存在自体が隠れてしまいますのでボタンクリックで反応しなくなります。

 

ここでは、ボタンをFlatなタイプにして枠線を幅0として表示させません。

 

  • FlatStyleプロパティをFlatに、
  • FlatAppearanceのBorderプロパティを0に、
  • Textプロパティで文字をすべて削除、

...でボタンがフォームに溶け込んだようになると思います。

もしボタンの色自体がフォームの背景と合わない場合は「Backcolor」のプロパティを背景と同じ色になるように設定しましょう。

f:id:apicode:20200818150506p:plain

 

このブログは、ネットや書籍上の情報、個人の体験や感想を中心にまとめたものです。 正確性を期していはいますが、間違い・誤訳等あるかもしれません。 当サイトの情報によって生じたいかなる損失について一切の責任を負わないものとします. あらかじめご了承ください。

プライバシーポリシー |〇利用規約 |〇問い合わせ