Qyoto (Qt) を用いたウィジェットを紹介していきますが、まだ Qt の Signal/Slot の理解が十分ではないので、今回は文字を表示するだけのラベルを紹介します。
Fedora 20 における Mono / Qyoto の開発環境の主要なパッケージは、前回と同じく以下の通りです。
- mono-core-3.4.0-2.fc20.x86_64
- qt-4.8.6-5.fc20.x86_64
- qyoto-4.12.5-1.fc20.x86_64
- qyoto-devel-4.12.5-1.fc20.x86_64
ラベル
ラベル QLabel は、文字列(あるいは画像)を表示するウィジェットです。
List: label.cs
using System; using Qyoto; /** * ZetCode Qyoto C# tutorial * * This program uses QLabel to * show lyrics of a song. * * @author Jan Bodnar * website zetcode.com * last modified October 2012 * * modified by Fuhito Suguri * laste modified 24-May-2014 */ public class QyotoApp : QWidget { public QyotoApp () { WindowTitle = "雨ニモマケズ"; InitUI (); Move (100, 100); Show (); } public void InitUI () { string text = @"雨ニモマケズ 風ニモマケズ 雪ニモ夏ノ暑サニモマケヌ 丈夫ナカラダヲモチ 慾ハナク 決シテ瞋ラズ イツモシヅカニワラッテヰル 一日ニ玄米四合ト 味噌ト少シノ野菜ヲタベ アラユルコトヲ ジブンヲカンジョウニ入レズニ ヨクミキキシワカリ ソシテワスレズ 野原ノ松ノ林ノ蔭ノ 小サナ萓ブキノ小屋ニヰテ 東ニ病気ノコドモアレバ 行ッテ看病シテヤリ 西ニツカレタ母アレバ 行ッテソノ稲ノ朿ヲ負ヒ 南ニ死ニサウナ人アレバ 行ッテコハガラナクテモイヽトイヒ 北ニケンクヮヤソショウガアレバ ツマラナイカラヤメロトイヒ ヒドリノトキハナミダヲナガシ サムサノナツハオロオロアルキ ミンナニデクノボートヨバレ ホメラレモセズ クニモサレズ サウイフモノニ ワタシハナリタイ"; QLabel label = new QLabel (text); label.Font = new QFont (null, 8); label.SetSizePolicy (QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Expanding); QVBoxLayout vbox = new QVBoxLayout (this); vbox.AddWidget (label); } [STAThread] public static int Main (String[] args) { new QApplication (args); new QyotoApp (); return QApplication.Exec (); } }
フォントの設定をしている QFont では、日本語フォントを制御する確認ができていないので、とりあえずフォントを null にしてサイズだけ指定しています。
コンパイルおよび実行例を以下に示します。
$ mcs label.cs -pkg:qyoto $ mono label.exe
参考サイト
- C# Qyoto tutorial
- Qyoto: Main Page - Qyoto Documentation
0 件のコメント:
コメントを投稿