リンクラベルをフォームに貼り付ける
1 ツールボックス(ツールボックスが開いていない場合は、表示メニューから「ツールボックス」を選択
してください。)から、 linkLabel1
をフォーム上のリンクラベルを貼り付けたい位置にドラッグし、ドロップする。
2 フォーム上で、リンクラベルを表示する大きさの指定は、マウスのドラッグにより行います。
3 デフォルトで、ツリービューのネーミングは、linkLabel1、linkLabel2、・・・・
の順となりま
す。
|
リンクラベルの名前を変える
1 フォームイメージが表示されるデザインビューでリンクラベルを選択した状態にし、画面右下のプロパ
ティウィンドウのName欄
の内容を変
更します。プロパティウィンドウ
が表示されない場合は、表示メニューから「プロパティウィンドウ」を選択してください。
※ ツリービューに限らず、ツールボックスから貼り付けたコントロールの名称を、プログラム内から変更することはできません。これは、プロ
グラムがこ
のNameプロパテイでコントロールを区別しているためです。
|
リンクラベルの大きさを変更する
1 ネーミングと同様に、プロパティウィンドウのSize欄を変更してくださ
い。カンマの左側がツリービューの横幅、右側が縦幅となりま
す。
2 Sizeはプログラムの中から変更することができます。例えば、
linkLabel1.Size=New System.Drawing.Size(300, 200);
という具合です。
他のコーディング方法としては、
linkLabel1.Width=300;
linkLabel1.Height=200;
とする方法があります。
|
リンクラベルの位
置を変更する
1 プロパティウィンドウのLocation欄を変更して
ください。カンマの左側が画面左端からの位置、右側が画
面上端からの
位置となります。
2 Sizeはプログラムの中から変更することができます。例えば、
linkLabel1.Location=New
System.Drawing.Point(20, 15);
という具合です。
他のコーディング方法としては、
linkLabel1.Left=20;
linkLabel1.Top=15;
とする方法があります。
|
リンクラベル表示の有無を切り替える
リンクラベル表示の有無を切り替えるには、Visibleプロパティを用います。
linkLabel1.Visible=true; //リンクラベルを表示
linkLabel1.Visible=false; //リンクラベルを非表示
|
リンクラベ
ルに文字を表示する
リンクラベルに文字を表示するのが、もっともリンクラベル本来の機能です。
linkLabel1.Text="これはサ
ンプル文字です。";
|
リンクラベ
ルの背景色を変える
リンクラベルには、他のコントロール同様にBackColorプ
ロパテイがあります。数字で背景色を指定するときは、R(赤)、G(緑)、B(青)
の順に、0〜255の範囲で値を指定してください。例えば、赤は「255,0,0」、 白は「255,255,255」という具合です。
ピクチャーボックスから、色をクリック指定することもできます。
プログラム上から色指定する場合は、
linkLabel1.BackColor=Color.Red;
又は
linkLabel1.BackColor=Color.FromArgb(255, 0,0);
という風に指定します。
|
リンクラベ
ルの描画色を変える
リンクラベルテキストの描画色は、ForeColorプロパテイ
で指定します。
プログラム上から色指定する場合は背景色の
設定と同様
に、
linkLabel1.ForeColor=Color.Black;
等と指定します。
|
リンクラベ
ルに画像を読み込む・リンクラベルの画像を保存する
リンクラベルに画像を読み込むもっとも簡
単な方法は、画像ファイルの所在パスを指定して、ImageクラスのFromFileメソッドを利用する方法で
す。
linkLabel1.Image = Image.FromFile("画像の所在を示すフルパス") ;
ただし、この方法の欠点は、画像ファイルにロックがかかり、プログラム上の他の部分で画像ファイルを操作しようとするとシステムエ
ラー
が発生することです。
これを避けるためには、BitmapクラスのFromStreamメソッドでストリーム読込みを行うとよいでしょう。
まず、プログラム冒頭で、System.IO名前空間を読み込みます。
using System.IO;
リンクラベルへの画像の読込みは次のとおりです。
FileStream sr = new
FileStream("画像の所在を示すフルパス",
FileMode.Open,FileAccess.Read);
Bitmap bmp =
(Bitmap)System.Drawing.Bitmap.FromStream(sr); //Bitmapクラスオブジェクトへ読込み
sr.Close();
//ストリームを閉じる
linkLabel1.Image=new Bitmap(bmp); //リンクラベルの画像イメージをBitmapオ
ブジェクトから創成
bmp.Dispose(); //Bitmapオブジェクトの廃棄
次にリンクラベル上の画像をファイルに保存する方法を解説します。保存には、Saveメソッドを使用します。
linkLabel1.Image.Save("画像を保存するフルパス") ;
画像のフォーマット(形式)を指定して保存するには、次のとおり指定します。フォーマットを指定せずに上記のように保存した場合は、
BMP形式で保存されます。
linkLabel1.Image.Save("画像を保存するフルパス",フォーマット名) ;
フォー
マット名
|
説
明
|
ImageFormat.Bmp
|
Bitmap形式で保存(デフォルト)
|
ImageFormat.Jpeg
|
Jpeg形式で保存
|
ImageFormat.Gif
|
Gif形式で保存
|
ImageFormat.Tiff
|
Tiff形式で保存
|
ImageFormat.Png
|
Png形式で保存
|
|
リンクラベルの画像を縮小して保存する
ラベルにイメージが読み込み済の場合に、そのイメージを縮小してファイルとして保存する方法を解説します。次の例では、ラベルイメージを
横50ピクセル、縦30ピクセルに縮小し、画像ファイルsample.bmpとして保存します。
Bitmap
img=new Bitmap(linkLabel1.Image,50,30); //ラベルイメージを伸縮後、Bitmapオブジェクトimgに保存
img.Save("C:\sample.bmp");
|
リンクラベ
ルの表示スタイルを変える
ラベルは、ボタンなどと違い、デフォルトではフラットスタイル(平板な形式)で表示されますが、BorderStyle
プロパティにより、多少は
デザイン化することができます。選択できるスタイ
ルは次のとおりです。
コー
ド
|
説
明
|
linkLabel1.BorderStyle=None; |
フラットスタイル
|
linkLabel1.BorderStyle=FixedSigle; |
実線枠線スタイル
|
linkLabel1.BorderStyle=Fixed3D; |
3Dスタイル(ラベル部分が窪んだスタイ
ル)
|
|
リンクラベルの表示優先順位を変える
一つのフォーム上に複数のコントロールを配置した場合に、どのコントロールを最前面に表示するのか、プロ
グラムからコントロールしたい場
合があります。
linkLabel1.BringToFront( ); //最前面に配置する
linkLabel1.SendToBack( ); //最後面に配置する
|
リンクラベルの表示をリフレッシュする
プログラム上でリンクラベルの
表示内容を変更した場合、何らかのイベントでプログラムが一旦停止するまでは、表示内容変更が画面に反
映しない場合があります。
これを避けるには、Refleshメソッドを用います。
linkLabel1.Reflesh( ); //ラベルをリフレッシュする
|
リンクラベルの文字表示位置を変える
リンクラベルに文字を表示させ
る場合、デフォルトでは、リンクラベル内の表示位置は「左上」となります。
この位置の変更方法は次のとおりです。
コー
ド
|
説
明
|
linkLabel1.TextAlign=TopLeft;
|
表示位置は左上
|
linkLabel1.TextAlign=TopCenter; |
表示位置は中央上 |
linkLabel1.TextAlign=TopRight; |
表示位置は右上 |
linkLabel1.TextAlign=MiddleLeft; |
表示位置は左中央 |
linkLabel1.TextAlign=MiddleCenter; |
表示位置は中央 |
linkLabel1.TextAlign=MiddleRight; |
表示位置は右
中央 |
linkLabel1.TextAlign=BottomLeft; |
表示位置は左下 |
linkLabel1.TextAlign=BottomCenter; |
表示位置は中央下 |
linkLabel1.TextAlign=BottomRight; |
表示位置は右下 |
|
リンクラベ
ルからリンクする
リンクラベルから、URLにハイパーリンクするには、まず、リンク先を指定します。
linkLabel1.Text="ここからリンクし
ます";
linkLabel1.Links.Add("http://www.apfield.com");
次にリンクラベルをマウスクリッ
クした際の挙動をLinkClickedイベントで指定します。
URLの場合、コンピュータでURLに関連づけられたアプリ
ケーション(通常はIEやNSなどのブラウザ)により、URLを開くようコーディングします。
private void linkLabel1_LinkClicked(object sender,
System.Windows.Forms.LinkLabelLinkClickedEventArgs e)
{
System.Diagnostics.Process.Start(this.linkLabel1.Text);
}
|
リンクテキストの動きを設定する
リンクラベルの挙動をマウスとの関連で設定します。linkBehaviorプロパテイで指定します。
コー
ド
|
説
明
|
linkLabel1.linkBehavior=SystemDefault; |
IEの「インターネットオプション」の設定
に従います。
|
linkLabel1.linkBehavior=AlwaysUnderline; |
リンクテキストには常にアンダーラインを付
けます。
|
linkLabel1.linkBehavior=HoverUnderline; |
リンクテキ
スト上にマウスが来たときにはアンダーラインを表示するよう設定します。 |
linkLabel1.linkBehavior=NeverUnderline; |
リンクテキ
ストには常にアンダーラインを付けません。 |
|
リンク後のリンクテキストの表示色を設定する
ハイパーリンク後に、過去に訪問
したサイトであることを示すため色を変化させるかどうかについて指定します。
linkLabel1.VisitedLinkColor=Color.Red;
//既訪問サイト表示色
linkLabel1.LinkVisited = true; //既
訪問時に色を変化させる、false・・・変化させない
|