Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
Uploaded by
hermit4 Ishida
8,636 views
Qt小技(修正版)
(Japanese - 日本語です) 関東Qt勉強会 #16で発表したときの資料(修正版)
Technology
◦
Read more
4
Save
Share
Embed
Embed presentation
1
/ 35
2
/ 35
3
/ 35
4
/ 35
5
/ 35
6
/ 35
7
/ 35
8
/ 35
9
/ 35
10
/ 35
11
/ 35
12
/ 35
13
/ 35
14
/ 35
15
/ 35
16
/ 35
17
/ 35
18
/ 35
19
/ 35
20
/ 35
21
/ 35
22
/ 35
23
/ 35
24
/ 35
25
/ 35
26
/ 35
27
/ 35
28
/ 35
29
/ 35
30
/ 35
31
/ 35
32
/ 35
33
/ 35
34
/ 35
35
/ 35
More Related Content
PDF
QtとC++でGUIプログラミング
by
seanchas_t
PDF
Qtではじめるクロスプラットフォームアプリケーション開発 osc2019 Nagoya
by
Kazuo Asano (@kazuo_asa)
PDF
ZeroFormatter/MagicOnion - Fastest C# Serializer/gRPC based C# RPC
by
Yoshifumi Kawai
PDF
Q planet
by
hermit4 Ishida
PDF
Tickライブラリで遊ぼう(C++)
by
kotoji
PDF
Hubotで遊ぶ
by
treby
PDF
プロ生ちゃんbotを作ろう!
by
treby
PDF
Hacking Ruby with Python
by
Taisuke Yamada
QtとC++でGUIプログラミング
by
seanchas_t
Qtではじめるクロスプラットフォームアプリケーション開発 osc2019 Nagoya
by
Kazuo Asano (@kazuo_asa)
ZeroFormatter/MagicOnion - Fastest C# Serializer/gRPC based C# RPC
by
Yoshifumi Kawai
Q planet
by
hermit4 Ishida
Tickライブラリで遊ぼう(C++)
by
kotoji
Hubotで遊ぶ
by
treby
プロ生ちゃんbotを作ろう!
by
treby
Hacking Ruby with Python
by
Taisuke Yamada
What's hot
PDF
constexpr関数はコンパイル時処理。これはいい。実行時が霞んで見える。cpuの嬌声が聞こえてきそうだ
by
Genya Murakami
PDF
Boost.Flyweight
by
gintenlabo
PDF
NextGen Server/Client Architecture - gRPC + Unity + C#
by
Yoshifumi Kawai
PDF
「黒騎士と白の魔王」gRPCによるHTTP/2 - API, Streamingの実践
by
Yoshifumi Kawai
PDF
Qtではじめるクロスプラットフォームアプリケーション開発 osc2019 hamanako
by
Kazuo Asano (@kazuo_asa)
ODP
こんにちはGroovy
by
irof N
PDF
Hello Dark-Side C# (Part. 1)
by
Yuto Takei
PDF
mrubyのfiberを試してみた
by
Kindai University
PDF
とりあえずこれだけ知っていればお仕事ができる(であろう)gitガチ入門
by
infinite_loop
PDF
Qt creatorでremote_debug
by
Kazuo Asano (@kazuo_asa)
PPTX
Slack + Hubot でお前の一番好きな二次元嫁キャラと一緒に仕事をする
by
sairoutine
PDF
Make a graph at Qt(used Qwt library)
by
Kazuo Asano (@kazuo_asa)
PDF
ZeroFormatterに見るC#で最速のシリアライザを作成する100億の方法
by
Yoshifumi Kawai
PDF
Lisp tutorial for Pythonista : Day 1
by
Ransui Iso
PPTX
Puppet×docker 夢の競演
by
Ryo Sugahara
PDF
GoPiGo2で遊んでみた
by
Kazuyuki Mori
PDF
Gitoriousをubuntu 10.04 LTSへインストール
by
Kiyoshi SATOH
PDF
What, Why, How Create OSS Libraries - 過去に制作した30のライブラリから見るC#コーディングテクニックと個人OSSの...
by
Yoshifumi Kawai
ODP
底辺webプログラマが今更git語ってみた
by
Yudai Fujita
KEY
hubotで快適BOT生活
by
Kazufumi Otani
constexpr関数はコンパイル時処理。これはいい。実行時が霞んで見える。cpuの嬌声が聞こえてきそうだ
by
Genya Murakami
Boost.Flyweight
by
gintenlabo
NextGen Server/Client Architecture - gRPC + Unity + C#
by
Yoshifumi Kawai
「黒騎士と白の魔王」gRPCによるHTTP/2 - API, Streamingの実践
by
Yoshifumi Kawai
Qtではじめるクロスプラットフォームアプリケーション開発 osc2019 hamanako
by
Kazuo Asano (@kazuo_asa)
こんにちはGroovy
by
irof N
Hello Dark-Side C# (Part. 1)
by
Yuto Takei
mrubyのfiberを試してみた
by
Kindai University
とりあえずこれだけ知っていればお仕事ができる(であろう)gitガチ入門
by
infinite_loop
Qt creatorでremote_debug
by
Kazuo Asano (@kazuo_asa)
Slack + Hubot でお前の一番好きな二次元嫁キャラと一緒に仕事をする
by
sairoutine
Make a graph at Qt(used Qwt library)
by
Kazuo Asano (@kazuo_asa)
ZeroFormatterに見るC#で最速のシリアライザを作成する100億の方法
by
Yoshifumi Kawai
Lisp tutorial for Pythonista : Day 1
by
Ransui Iso
Puppet×docker 夢の競演
by
Ryo Sugahara
GoPiGo2で遊んでみた
by
Kazuyuki Mori
Gitoriousをubuntu 10.04 LTSへインストール
by
Kiyoshi SATOH
What, Why, How Create OSS Libraries - 過去に制作した30のライブラリから見るC#コーディングテクニックと個人OSSの...
by
Yoshifumi Kawai
底辺webプログラマが今更git語ってみた
by
Yudai Fujita
hubotで快適BOT生活
by
Kazufumi Otani
Viewers also liked
PDF
qmake入門
by
hermit4 Ishida
PDF
QtでC++開発環境構築
by
You&I
PDF
Qt5 の新機能 2012/12/15
by
Takumi Asaki
PDF
Kubernetes & Google Container Engine; DockerコンテナをGKEでクラスタリングしてみた
by
祐磨 堀
ODP
Qt Widget 入門① -様々なHello World編-
by
Yikei Lu
PDF
マーク&スイープ勉強会
by
7shi
PDF
お絵描きソフト「PaintField」の開発
by
seanchas_t
PPTX
インフラエンジニアから見たRedmine redmine.tokyo #9
by
Sho Douhashi
PDF
Cコンパイラの改造(未)
by
7shi
PDF
Rcppのすすめ
by
Masaki Tsuda
PDF
How To Redmine !
by
H Y
PDF
Redmine + MySQL 応答性能の調査結果と対策
by
Kuniharu(州晴) AKAHANE(赤羽根)
PDF
Oftec Lightning Talk 第7回 最近触ったLinuxディストリビューションの紹介
by
Yu Nobara
PDF
Qt + MSVC でビルドする時にQt Creator のデバッガを使う方法
by
Shinya Takebayashi
PPTX
講演2 実例に基づくRedmine管理者入門 r2
by
Hidehisa Matsutani
PDF
ネットワークの負荷分散を手軽に - OSC2015 Hokkaido
by
Shinya Takebayashi
PDF
関西Qt勉強会 ごーるでん 発表資料
by
Yuya Adachi
PPTX
グローバル戦略におけるクラウド活用のポイント - AWS Summit Tokyo 2014 Day 1 : Keynote
by
Takayuki Enomoto
PDF
モバイルゲームの全世界オンライン対戦を実現する方法を考察する
by
CROOZ, inc.
PDF
Amebaアプリ QAの歴史(サイバーエージェント関根様)
by
ques_staff
qmake入門
by
hermit4 Ishida
QtでC++開発環境構築
by
You&I
Qt5 の新機能 2012/12/15
by
Takumi Asaki
Kubernetes & Google Container Engine; DockerコンテナをGKEでクラスタリングしてみた
by
祐磨 堀
Qt Widget 入門① -様々なHello World編-
by
Yikei Lu
マーク&スイープ勉強会
by
7shi
お絵描きソフト「PaintField」の開発
by
seanchas_t
インフラエンジニアから見たRedmine redmine.tokyo #9
by
Sho Douhashi
Cコンパイラの改造(未)
by
7shi
Rcppのすすめ
by
Masaki Tsuda
How To Redmine !
by
H Y
Redmine + MySQL 応答性能の調査結果と対策
by
Kuniharu(州晴) AKAHANE(赤羽根)
Oftec Lightning Talk 第7回 最近触ったLinuxディストリビューションの紹介
by
Yu Nobara
Qt + MSVC でビルドする時にQt Creator のデバッガを使う方法
by
Shinya Takebayashi
講演2 実例に基づくRedmine管理者入門 r2
by
Hidehisa Matsutani
ネットワークの負荷分散を手軽に - OSC2015 Hokkaido
by
Shinya Takebayashi
関西Qt勉強会 ごーるでん 発表資料
by
Yuya Adachi
グローバル戦略におけるクラウド活用のポイント - AWS Summit Tokyo 2014 Day 1 : Keynote
by
Takayuki Enomoto
モバイルゲームの全世界オンライン対戦を実現する方法を考察する
by
CROOZ, inc.
Amebaアプリ QAの歴史(サイバーエージェント関根様)
by
ques_staff
Similar to Qt小技(修正版)
PDF
it's Qt!
by
You&I
PPTX
競技プログラミングのためのC++入門
by
natrium11321
PDF
PyQtではじめるGUIプログラミング
by
Ransui Iso
PDF
AtCoder Beginner Contest 010 解説
by
AtCoder Inc.
PDF
Adding simpl GVN path into GHC
by
Kei Hibino
PDF
超絶技巧プログラミングの世界(FTD2015)
by
mametter
ODP
Qt名古屋勉強会へのお誘い(OSC名古屋2017LT)
by
Naoki Matsumoto
PDF
わんくま同盟大阪勉強会#61
by
TATSUYA HAYAMIZU
PDF
バッチリネーマーの制作
by
eighttails
ODP
みんな大好き! Hello, World
by
Naohiro Aota
it's Qt!
by
You&I
競技プログラミングのためのC++入門
by
natrium11321
PyQtではじめるGUIプログラミング
by
Ransui Iso
AtCoder Beginner Contest 010 解説
by
AtCoder Inc.
Adding simpl GVN path into GHC
by
Kei Hibino
超絶技巧プログラミングの世界(FTD2015)
by
mametter
Qt名古屋勉強会へのお誘い(OSC名古屋2017LT)
by
Naoki Matsumoto
わんくま同盟大阪勉強会#61
by
TATSUYA HAYAMIZU
バッチリネーマーの制作
by
eighttails
みんな大好き! Hello, World
by
Naohiro Aota
Qt小技(修正版)
1.
Qt小技集 CUIもQtで行こうよ * 諸事情により一部画像は、発表時から差し替えております。ご想像によりご自由な画像を思い浮か べてお読みください。 13年6月17日月曜日
2.
自己紹介 Twitter :hermit4 職業 :
文系出身のプログラマ 所属 :フリーランス 分野 :最近何でも屋の雰囲気 最近の興味 : プライベート時間の作り方 最近の課題 : 勉強時間の確保 13年6月17日月曜日
3.
本日のお題 • Qt5って美味しいの?Qt4.8で行きます! • QMLってなんだっけ。C++で行きます! •
GUIはQMLでいいじゃん。CUIで行きます。 13年6月17日月曜日
4.
QtでCUIってぶっちゃけどうなの? • 正規表現が使えます • Write-on-copy等に対応したコンテナ •
強化された文字を扱うQStringの利用 • 豊富なマルチスレッド機能 • シグナルやスロットを使ったイベントドリブンな設計 13年6月17日月曜日
5.
QtでCUIってどう作るの? 13年6月17日月曜日
6.
QtでCUIってどう作るの? 13年6月17日月曜日
7.
QtでCUIってどう作るの? 13年6月17日月曜日
8.
QtでCUIってどう作るの? イベントループが回り続けるだけなので、何も せず終了もしないプログラムが出来るだけで す。 13年6月17日月曜日
9.
QtでCUIってどう作るの? 返事が無い。 ただのしかばねのようだ・・・ イベントループが回り続けるだけなので、何も せず終了もしないプログラムが出来るだけで す。 13年6月17日月曜日
10.
QtでCUIってどう作るの? // 心配になってGoogle検索したら出てきたブログ記事から抜粋 #include <QCoreApplication> #include
<iostream> int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); std::cout << "Hello World." << std::endl; return a.exec(); } 標準出力へメッセージを出した後、イベントループ待ちするため、終了しないコ マンドになります。死んだわけではなく、イベント待ちしているのですが、コンソ ールアプリとしては間違ってます。 13年6月17日月曜日
11.
QtでCUIってどう作るの? // 心配になってGoogle検索したら出てきたブログ記事から抜粋 #include <QCoreApplication> #include
<iostream> int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); std::cout << "Hello World." << std::endl; return a.exec(); } Hello World. もの言わなくなった。 死んでしまうとは情けない・・・ 標準出力へメッセージを出した後、イベントループ待ちするため、終了しないコ マンドになります。死んだわけではなく、イベント待ちしているのですが、コンソ ールアプリとしては間違ってます。 13年6月17日月曜日
12.
QtでCUIってどう作るの? #include <iostream> // ただ表示するだけなら、これだけで良いのです int
main(int argc, char *argv[]) { std::cout << "Hello World." << std::endl; return 0; } Qt SOUND ONLY Qtはどこへ・・・。わたし気になります。 13年6月17日月曜日
13.
QtでCUIってどう作るの? #include <QTextStream> static QTextStream
cout(stdout); int main(int argc, char* argv[]) { Q_UNUSED(argc); Q_UNUSED(argv); cout << "Hello World" << endl; return 0; } Qt SOUND ONLY QCoreApplicationはいらないのですか? 無理矢理Qt使ってみていますが、 とはいえ使う意味はあまりないプ ログラムになります 13年6月17日月曜日
14.
QCoreApplicationは必要? 無くてもQtの色々は使えます • Qt定義のタイプを使えます(qreal, qint16,
qint32, qint64) • コンテナクラスを使えます(QList, QVector,QMap) • QTextStream経由でコンソールに文字出せます • QString, QVariantなんかも使えます 13年6月17日月曜日
15.
• Event LoopとEvent
Handling • アプリケーションおよびライブラリのPATH取得 • 国際化及び翻訳機能 • コマンドライン引数への簡単アクセス • ロケールの設定 QCoreApplicationで出来る事 13年6月17日月曜日
16.
• いわゆるシグナルとスロットを使うもの • QTimer •
QProcessで終了をスロット検知する • QThread間のやり取り • QFileSystemWatcherのような監視してるもの Event LoopとEvent Handling 13年6月17日月曜日
17.
• QString QCoreApplication::applicationDirPath() • QString QCoreApplication::applicationFilePath() •
qint64 QCoreApplication::applicationPid() • QStringList QCoreApplication::libraryPaths() • void QCoreApplication::addLibraryPath(const QString& path) アプリケーションやライブラリのパス取得 13年6月17日月曜日
18.
国際化と翻訳 #include <QTextStream> #include <QCoreApplication> #include
<QTranslator> static QTextStream cout(stdout); int main(int argc, char* argv[]) { QCoreApplication app(argc, argv); QTranslator trans; trans.load("hello.qm"); app.installTranslator( &trans ); cout << QObject::tr("Hello World") << endl; return 0; } 13年6月17日月曜日
19.
lupdate hello.pro -ts
hello.ts linguist hello.ts 国際化と翻訳 13年6月17日月曜日
20.
国際化と翻訳 13年6月17日月曜日
21.
コマンドライン引数への簡単アクセス QStringList QCoreApplication::arguments() ちなみに、これstaticなメンバ関数です。 QStringListなので、オプション解析は自力でも 簡単にできるかと。 arguments().contains(“-t”) 順番や無効引数でhelpが必要とかいうなら、 loopしながら見てくなりすれば良いと思うよ 13年6月17日月曜日
22.
ところで Qt SOUND ONLY 小技はどこへ・・・。わたし気にな(ry コンソールアプリ作るときの小技紹介のつもりで、そもそもコ ンソールアプリの作り方を話しただけで時間無くなってしまう 計算に・・・・。内容を良く考えもせずタイトルだけ伝えてあ ったもので・・・。実際この時点で残り時間5分ちょっと。 とはいえ、タイトル詐欺に成らないように駆け足でざっくり小技 のご紹介をしました。 13年6月17日月曜日
23.
小技(1) QDebug Qtでデバッグ出力といったら<QDebug> 実は、このデバッグ、書き出し先や挙動を変更できます。 qDebug() <<
“hogehoge”; qWarning() << “Warning”; qCritical() << “Critical”; QtMsgHandler qInstallMsgHandler(QtMsgHandler handler) を使います。 13年6月17日月曜日
24.
小技(1) QDebug #include <qapplication.h> #include
<stdio.h> #include <stdlib.h> void myMessageOutput(QtMsgType type, const char *msg) { switch (type) { case QtDebugMsg: fprintf(stderr, "Debug: %sn", msg); break; case QtWarningMsg: fprintf(stderr, "Warning: %sn", msg); break; case QtCriticalMsg: fprintf(stderr, "Critical: %sn", msg); break; case QtFatalMsg: fprintf(stderr, "Fatal: %sn", msg); abort(); } } int main(int argc, char **argv) { qInstallMsgHandler(myMessageOutput); QApplication app(argc, argv); ... return app.exec(); } 13年6月17日月曜日
25.
小技(2) QtGlobal -
typedef qint8 qint16 qint32 qint64 qlonglong qptrdiff qreal quint8 quint16 quint32 quint64 quintptr qulonglong uchar uint ulong ushort 各自がバラバラに作り やすいtypedef Qtを使えば解決じゃん というおはなし 13年6月17日月曜日
26.
小技(3) QtGlobal -
演算関数 T qAbs ( const T & value ) const T & qBound ( const T & min, const T & value, const T & max ) bool qFuzzyCompare ( double p1, double p2 ) bool qFuzzyCompare ( float p1, float p2 ) const T & qMax ( const T & value1, const T & value2 ) const T & qMin ( const T & value1, const T & value2 ) qint64 qRound64 ( qreal value ) int qRound ( qreal value ) qFuzzyCompareは、その名の通り適当な感じで比較しているので、計算 機イプシロンを使った厳密な比較ではないものの、浮動小数点の簡易的 な比較には十分使える。 13年6月17日月曜日
27.
浮動小数点数の補足説明(追記) 便利そうという顔をした人が少ない気もしたので念のため補足。floatもdoubleも使わない業界の人はずっと使わないですしね ぇ・・・。かく言う私も、この仕事についてかなり後の方でした、floatやdoubleをガリガリ使う仕事についたのは。 現代のコンピュータにおいては、実数であっても有限なビット数の2進数を使って表現しています。 実装方法は色々ですが、WikipediaのIEEE 754とか、その辺りを見ると割と一般的に使われているものが説明されています。いや、IEEE 754自体を読むのが正しいとは思いますけど、知らないと言う事は必要な局面に立っていないのでしょうし、楽な解説読めばいいんじ ゃなイカ。 で、Google先生に聞けば、文系出の私の知識よりよっぽど詳しく正しいものが見つかりそうなので省きますが、floatやdoubleには、同 じ数字に思えても、誤差を含んでいる場合があります。このため、C,C++において、!=や==は正常に動作しない場合があります。 こういった比較をする時は、比較する「実数同士の差の絶対値」が、「ある数値」を超えるか否かで判断します。この「ある数値」 は、非常に厳密にやるなら、”比較する数のうち「大きい数」とその「大きい数を超えた最小の数」の差”を比較対象にするのです が、いちいち比較の度にこれを厳密に求めるのは無駄な場合が多い(そこまで厳密である必要が無い事が多い)ので、システムとし て必要な有効桁数を決めてざっくり決めるのが現実的かと思います。で、Qtの方で適当に決めた範囲で比較してくれてますというお 話です。ただし、かなりざっくりな事は覚悟して使って下さいと。 なお、1.0と1.0を超える最小の数値を計算機イプシロンと呼びます(と私は人に教わりました)が、C,C++では、1.0と1.0を超える最小 の数値の差をFLT_EPSILON, DBL_EPSILONと定義していたりで、こちらをイプシロンと呼ぶ人もいます。ちなみにこのイプシロンです が、1.0の場合の話で、1.0より小さい数の場合、もっと小さな値になる相対的なものです。また、人によっては、その相対的な差の事 をイプシロンと呼ぶ人もいるので注意が必要です。まぁ、イプシロンについては、Cで定義されているイプシロンは、「1.0と1.0を超 える最小の数との差」で、それをそのまま等号比較に使ってはいけないとだけ覚えておけば良いでしょう。 あとは、相当真面目にやらなきゃ行けない仕事についた時に頑張って調べ直して下さい。 13年6月17日月曜日
28.
小技(4) QtGlobal -
rand関数 int qrand () void qsrand ( uint seed ) seedをもとにしたランダム値の生成。Thread-safe版 小技(5) QtGlobal - 環境変数 環境変数の取得・設定用の関数 QByteArray qgetenv ( const char * varName ) bool qputenv ( const char * varName, const QByteArray & value ) 13年6月17日月曜日
29.
小技(6) QtGlobal -
マクロ編 QT_REQUIRE_VERSION ( int argc, char ** argv, const char * version ) 必要なQtバージョンを指定できる。 (GUIのみ) QMessageBoxに定義されている #include <QApplication> #include <QMessageBox> int main(int argc, char *argv[]) { QT_REQUIRE_VERSION(argc, argv, "4.0.2") QApplication app(argc, argv); ... return app.exec(); } 13年6月17日月曜日
30.
小技(6) QtGlobal -
マクロ編 Q_BYTE_ORDER ビルド環境のエンディアンに応じた処理を記述できる #if Q_BYTE_ORDER == Q_BIG_ENDIAN ... #endif or #if Q_BYTE_ORDER == Q_LITTLE_ENDIAN ... #endif その他、assertの変わり、コンパイラやQtバージョンのマクロ等もある ので、見てみるとこれはと言う物がみつかるかも http://qt-project.org/doc/qt-4.8/qtglobal.html 13年6月17日月曜日
31.
小技(7) .pro編 元々Qt Creatorを使っていなかった時代の知識なので、若干古くさいで すが、qmake用の.proファイルを手作業でいじるお話です。 QtはデフォルトでlibQtGUIとリンクしようとするので、それをはずすに は.proファイルに以下の記述が必要です。 Qt
-= gui Qtはモジュールと呼ばれる単位に分かれています。(完全に奇麗に分か れているかは少し怪しい所もありますが)使いたいモジュールを足して いきます。 13年6月17日月曜日
32.
小技(6) .pro編 network ネットワーク関連クラスを使う sql
データベース関連のクラスを使う xml XML関連で、SAX,DOMを使う xmlpatterns XPath,XQuery,XSLT,SchemaValidation script スクリプトエンジンの組込み CUIで使えそうなものだけ抜き出してみました。 マニュアルのAll ModulesでModuleを選択すると何をQT+=するか出てま す。 13年6月17日月曜日
33.
小技(7) .pro編 アプリケーション名、インストール先を変える TARGET =
hello target.path = /usr/local/bin INSTALLS += target これで生成されるMakefileには、インストール用の設定が行われます。 13年6月17日月曜日
34.
小技(7) .pro編 複雑になり始めたアプリケーション構成への対応 TEMPLATE =
lib qmake -projectで生成されるのは、基本アプリケーションビルド用のの appですが、ライブラリを生成したい時には、lib templateを選択します。 TEMPLATE = subdirs SUBDIRS += lib hello ちなみに、subdirsを使うと、サブディレクトリを分けてそれぞれの下を 巡回してqmakeを行い、サブディレクトリをたどるMakefileを生成してく れます。 13年6月17日月曜日
35.
ご清聴ありがとうございました もともとQtをあまり知らない人用にと思って書いたのでみなさんには 既知の内容が多かったかもしれません。 RubyやPython等のお手軽さに比べるとビルドの必要性ややらなければな ことの多さで負けていますが、処理するものの量が多ければ、Qtの方 が有用な場合もあります。 ちょとしたスクリプトを書いた時、お暇があれば、Qtを使って書き直 してみてはどうでしょうか。 13年6月17日月曜日