C#でラベルのテキストをインラインで編集出来るように見せるサンプルプログラム

スポンサーリンク
プログラミング

PowerPointでテキストをインラインで変更する機能を、プログラムではどうやって実現するかを調査しました。

 

プログラムの実行例

 

いきなりですが、サンプルプログラムの実行例です。

 

起動直後

WS000485

 

 

form1にlabel1を貼り付けています。

 

ここでlabel1の付近をクリックします。

 

WS000487

label1が選択されたように反転されています。

 

 

実は、label1はdisposeして、textBox1を貼り付けたform2が起動しています。

 

 

WS000494

textBox1を変更します。

 

 

Enterを押します。

 

このタイミングで、form2をdisposeしてlabel1をshowします。

WS000495

 

label1が変更されました。

 

 

プログラムのサンプル

 

form1にラベルをform2にテキストボックスを使います。

 

 

 

 

form1のlabel1を押すと、form2のtextBox1に置き換わるように、

Point pt = label1.PointToScreen(new Point(0, 0));

を使って位置を調整します。

 

フォームのプロパティ

form2の

FormBorderStyleをSizableからNoneに

変更します。

 

form2のtextBox外側の枠である

BorderStyleをNoneにして消しておきます。

 

form2の上に貼り付けたtextBoxをピッタリにして

あたかもform2が存在していないかのようにしておきます。

 

こうすることで、ラベルを押してテキストボックスが表示される遷移がシームレスに見えるようになります。

 

このプログラムに対する要望

 

やっぱりフォントを一文字ずつ変更したいなぁ。

やっぱり文字を回転させたいなぁ。

やっぱり文字を移動させたいなぁ。

 

とソフトウェアへの要望は限りなく続くのであった。

 

プログラミングの無料レッスン体験

 

約8,000名の受講生と80社以上の導入実績のあるプログラミングやWebデザインのオンラインマンツーマンレッスンCodecamp

<Codecampの特徴>

1 現役エンジニアによる指導

2オンラインでのマンツーマン形式の講義

3大手企業にも導入されている実践的なカリキュラム

↓無料体験レッスン実施中です。

プログラミングのオンラインスクールCodeCamp

 

 

 

コメント