めまいプログラマーの徒然

小脳出血でめまいをおこしている プログラマの忘備録

Linux Mono はじめの一歩

 どんなプログラムを作るかを決めます。
 メインウインドウにボタンとEntryを配置し、ボタンをクリックする毎にカウンターを更新しその数字を表示します。(数字は 0 ~ 9 まで)

f:id:xskawabe:20180109192958p:plain

ソリューション(プロジェクト)の作成

Monodevelop 起動

メニュー
 新規(N)
  ソリューション
     と選択し

 

プロジェクトの種類に
 その他
   .NET
    を選びます。

    その中で、Gtk# 2.0 プロジェクト C# を指定します。

 

f:id:xskawabe:20180109193322p:plain

 プロジェクト名、ソリューション名を入力し保存するディレクトリをブラウザーで指定します。最初は MainWindow のみが表示されます。これにコンテナ、ウィジェットを張り付けて画面を作成していきます。

f:id:xskawabe:20180109193539p:plain

 

画面の作成

画面右の Toolbox を選択し

Fixed をまず配置する。
次に Button を配置する。
次に Entry を配置します。
Button, Entry の配置順序はどちらが先でもOKです。

f:id:xskawabe:20180109193619p:plain

 最初に Fixed を配置することによりその上に配置するウィジットは好きな所に配置できる。マウスでウィジェットの上部に出てくる をマウスでつまんで好きな位置に移動できます。
(プロパティの Fixed Child Layout の X, Y を変更しても位置は変えられます。)
 画面右の ToolBox, プロパティ, ドキュメント アウトライン はメニューのビュー(V)、パッドをクリックしても選択が可能です。

 (画面上から消えたらメニューから指定してください。)

 

 プロパティ変更するには先ずウィジェットをマウスで選択したのちにプロパティをクリックしてください。

ウィジェット(GtkButton) の大きさを変更する場合は画面の上にある +, - をクリックしてください。

 

 Entry の Text に 『No Click』 と入力しておきますと起動時の画面に反映されます。

 

シグナル(イベント)の登録

 Button をクリックしたのちプロパティを開いてください。プロパティ、シグナル タブのシグナルを選択して Button Signals を選択します。ハンドラに OnClick と名前を登録します。(その右の項目の 後 の意味はよく分かりません?)

 

f:id:xskawabe:20180109194416p:plain


 画面下の『ソース』、『ディザイン』の『ソース』をクリックするとプログラムが
現れますので(なぜか、縦書き見たい!?)


以下のように改造します。

01: using System;
02: using Gtk;
03: 
04: public partial class MainWindow: Gtk.Window
05: {
06: 	public MainWindow () : base (Gtk.WindowType.Toplevel)
07: 	{
08: 		Build ();
09: 	}
10: 
11: 	protected void OnDeleteEvent (object sender, DeleteEventArgs a)
12: 	{
13: 		Application.Quit ();
14: 		a.RetVal = true;
15: 	}
16: 
17: 	int BtnCounter = 0 ;
18: 	protected void OnClick (object sender, EventArgs e)
19: 	{
20: 		// throw new NotImplementedException ();
21: 		if ( ++BtnCounter == 10) {
22: 			BtnCounter = 0;
23: 		}
24: 		entry1.Text = BtnCounter.ToString();
25: 	}
26: }

  メニュー 実行(R) のStart Debug でデバッグを開始できます。また、コンソールより作成したソリューションのディレクトリ内に bin ディレクトリがありその下に Debug / Release (Release が無い場合もあります。)のそれぞれに xs04.exe 実行ファイルがありますのでコンソールより ./xs04.exe と入力しても動作します。

 

最初、わからない事ばかりで本当に『はじめの一歩』となり、余分な時間を取られてしまいました!!