【Win/Mac/Linux/Android/iOS】 Qt 総合スレ 19

1デフォルトの名無しさん
垢版 |
2019/10/24(木) 13:32:07.93ID:rWKhVVJ5
Qt(キュート)は C++ ベースのフレームワーク&RAD開発環境です。

ライブラリの機能は、フォーム、ボタンなどの各種ウィジェットからネットワーク、マルチスレッド、
グラフィックス(OpenGL)や各種コンテナ、XMLパーサー、組み込み JavaScript など、非常に多岐に渡ります。
公式の統合開発環境「Qt Creator IDE」を使えば、クロスプラットフォーム対応のRAD開発が可能です。
また、EclipseやVisual Studio上で開発したい人のためのアドインも用意されています。

■主な対応プラットフォーム(デスクトップ用途の場合)

Windows XP, Vista, 7
Mac OS X 10.4, 10.5, 10.6
Linux

■ライセンス

・オープンソース版(Open-source version)
 LGPL 2.1 または GPL 3.0 のうちどちらかを利用者が選べます。
 LGPL を選んだ場合はソースコード非公開のままでの商用利用が可能です(いくつか制限あり)。
 ※正確には通常「LGPL+商用利用向きの例外条項」を選ぶことにな7ります(Qtインストール先の「LGPL_EXCEPTION.txt」を参照)。
  ちなみにGPLでも商用利用が不可能というわけではありません、念のため。
・商用版(Commercial version)
 こっちはDigia社か日本の代理店(SRA社)とライセンス契約(年間30万くらい?)を結んで使います

■Qt を使って作られたソフト例

KDE、Maya、Adobe Photoshop Elements、Google Earth、Skype、DAZ Studio
MotionBuilder、RealFlow、Nuke、LuxRender、Mathematica、Kindle、VirtualBox、
RuviEdit、さくさくエディタ など

■前スレ
【Win/Mac/Linux/Android/iOS】 Qt 総合スレ 18
http://mevius.5ch.net/test/read.cgi/tech/1488948543/
2020/04/13(月) 00:34:42.81ID:Er/sUT94
>>75
CopperSpice ?
Verdigris ?
77デフォルトの名無しさん
垢版 |
2020/04/13(月) 10:46:18.49ID:xWnIwwwl
77
2020/04/14(火) 16:35:03.71ID:I1ciDNkh
>>74
金払わんやつは12ヶ月遅れでリリースな、で揉めてる。
2020/04/14(火) 16:45:28.52ID:lsSf2H/8
どうなるの…
2020/04/15(水) 13:34:25.51ID:OqOKNGm+
>>78
そんなことしてなんの意味があるんだろう。Qtの新機能や修正が実質遅れるだけじゃん。
OSS版のユーザーの知識が一年遅れるからプルリクエストを送っても古すぎて役に立たなくなる。
2020/04/15(水) 17:00:05.63ID:cY4/1mv9
組込みで使ってるところも口を揃えてQtはライセンス料が高いって言ってるんだけど
The Qt Companyはがめついのか商売が下手なのか
2020/04/15(水) 19:39:01.71ID:eR1/G8h6
なんだかんだ言って組み込みで使える真っ当なGUIフレームワークはQtしかないから、ライセンス料を下げれば一気に普及すると思うんだけどねぇ。商売がヘタ
2020/04/18(土) 20:16:30.44ID:F00pee+U
ソースからコンパイルすれば問題ねぇと思てたら、
パソコン遅くて時間がかかるw
バイナリ配布ってありがたかったんやなぁ
84デフォルトの名無しさん
垢版 |
2020/04/18(土) 23:37:30.06ID:o4L+6pXa
>>82
組込のGUIなんてQtが格安なくらい他がクソ高かったものだが
そもそもニッチな商売だから他が死滅してヨソから見たら高いと感じるのかもしれんが
2020/04/19(日) 00:00:01.31ID:u21QryuH
Windows 10, WSL, Ubuntu 18.04 で、

Linux側には、日本人が作った、バージョンマネージャーのanyenv で、rbenv, nodenv を使って、
ruby 2.6.6, node 12.16.2 を入れたけど、

CPU-i3 で、省エネモードでコンパイルしたから、
rubyのコンパイルに、20分ほど掛かった!

i7 で、並列コンパイルすれば、数分で出来るかも
2020/04/19(日) 16:47:37.56ID:4dsSWd/u
>>82
普及させても会社がつぶれては元も子もない。
2020/04/20(月) 03:19:59.87ID:JIq6s09t
QtがGTK、wxWidget、FLTKと比べて対応範囲が広くて人気も高いのは
対価を得ることによるフルタイムで働ける優秀なプログラマを確保できている
経済的サイクルのおかげであり、安くしてそのサイクルが壊れれば
商品の水源が破壊され、商品の品質が下がり、何もかも破綻する。
2020/04/25(土) 15:32:29.77ID:Pngb/gGH
C++でGUIを作るのが間違い
2020/04/25(土) 15:48:24.64ID:Pngb/gGH
組み込みは従来のようにボタンとスイッチやつまみをたくさん付けて液晶には簡単な表示だけしとけばでおk
2020/04/25(土) 19:46:06.97ID:KFbZVtx+
Qt(組み込みlinux)で使ってるが、はまってる。
2020/05/02(土) 08:07:44.42ID:dNXdJ5ZK
qtcreator 自体をビルドしたら、ヘルプが見えない状態だった
ヘルプを見えるようにするにはどうしたらええんや?
2020/05/02(土) 11:01:56.47ID:dNXdJ5ZK
>>91
自己解決したわ
libxml2-2.dll を qtcreator の bin フォルダにぶっこんだら
無事にヘルプが表示されたで
93デフォルトの名無しさん
垢版 |
2020/05/07(木) 10:55:50.10ID:xyO/EXA1
shotcutという動画編集ソフトを使用しているのですが、qt_scale_factorは整数しか使えないのでしょうか?
1.3というような数値だと2として扱われるように見えます
2020/05/10(日) 06:29:49.06ID:MdXjYqca
>>92
安心して今までヘルプを確認していなかったが、昨日確認したら
オフラインインストールした5.12.6のヘルプが表示されてることに気が付いた・・・
(説明していなかったけど、qtcreatorだけじゃなくqt5.12.8もビルドしてたんや)
一応調べたら別途make docsを実行することでヘルプを
ビルド出来ることが分かったけど、docsって自動でビルドされないのか?
それともconfigure時に何か指定しなければならなかったのやろか?
2020/06/12(金) 23:14:32.57ID:5I6maKfm
Qt5.15出たのに話題にならないとは・・・
2020/06/12(金) 23:32:04.69ID:0juPXsBO
5.15はQt6への橋渡しだからな
興味は6よ
97デフォルトの名無しさん
垢版 |
2020/06/16(火) 10:50:14.45ID:ft0Z6DhG
Qt6ってどういう方向に進歩するんだろうか。decraretive widgetsとかやるの?
2020/06/16(火) 11:06:56.47ID:NO1qg5y9
ReactのようなModelからの自動更新機能をJavaScriptに頼らず実現してほしいね。
99デフォルトの名無しさん
垢版 |
2020/06/23(火) 23:41:37.23ID:kovWaTXm
Qt6のバイナリーパッケージの配布が始まったがどんな印象?
2020/06/24(水) 02:53:49.17ID:9VapQj5L
いまさらなんだが・・QTって何て読むんだ?
キュウティー?
101デフォルトの名無しさん
垢版 |
2020/06/24(水) 09:52:27.45ID:4I9Zugsa
>>100
>>1
2020/06/24(水) 09:59:52.43ID:Y4c4n+Ed
Qt5.15にしたらQJsonObjectでkey名に一部を除く2バイト文字を含んだkeyの処理に失敗するようになった
for (QString key : jsonObj.keys())からjsonObj.contains(key)で失敗するってなんだよ
書き込みでも存在しないと認識されるせいで同じ名前のkeyが作られるし
toVariantHashで変換すれば読み書きできるけど既にファイルは壊れちまったよ
103デフォルトの名無しさん
垢版 |
2020/06/24(水) 10:47:03.40ID:6+kkBVmV
2バイト文字ωω
2020/06/24(水) 12:33:56.40ID:yJo1RSUy
JSONのキー名に日本語を使うとか頭おかしいとしか。
2020/06/24(水) 13:28:15.70ID:Y4c4n+Ed
前までは問題なかったしファイル名をキー名にすると楽だったんだもの・・・
106デフォルトの名無しさん
垢版 |
2020/06/24(水) 13:34:26.44ID:6+kkBVmV
漏れなら万一を考えて
ファイル名をバイト列でエンコードしてからキーにする
仮に一バイト文字のファイルであっても
"aaa.txt" というファイルだとしたら
キーのバイト列は "\61\61\61\2e\74\78\74" を与える
107デフォルトの名無しさん
垢版 |
2020/06/24(水) 13:35:26.44ID:6+kkBVmV
すまん最後可笑しかった
キーのバイト列は "6161612e747874" を与える
2020/06/24(水) 14:33:34.04ID:Y4c4n+Ed
>>107
そうやってエンコードしとけばよかったのか
一応ファイル名のままならjson自体を開いても構成がわかりやすいってのもあったんだけど壊れるよりましだね
今度から気をつけるわthx
2020/06/24(水) 14:50:01.15ID:7DLmzV7c
いや、日本語をキーにしても仕様上問題ないだろ
実装がバグってるだけだろ
2020/06/24(水) 15:50:25.60ID:rM4tv+8j
UTF-8 じゃなくて、CP932 を使っているのかも?
111デフォルトの名無しさん
垢版 |
2020/06/24(水) 16:25:29.58ID:OLeI57gB
UTF-8 なら大体 3 バイト文字だしな
112デフォルトの名無しさん
垢版 |
2020/06/24(水) 17:51:21.37ID:B4AJ9uyI
win版Qtcreatorのアプリケーション出力枠もutf-8にしてほしい
113デフォルトの名無しさん
垢版 |
2020/06/24(水) 19:00:56.56ID:JMDGovWD
https://wiki.qt.io/Strings_and_encodings_in_Qt
2020/06/25(木) 23:19:11.68ID:HDoOrRNK
Qt4は扱う文字列を Shift-JIS(CP932) にすることが可能だったのでプログラム先頭で宣言すれば
(Linuxであっても)Shift-JISで統一することができたがQt5はUTF-8決め打ちになった

Windowsで(正確に言うとVisual Studio の toolchain)でUTF-8を扱うには2つの問題がある

1) ソースファイルがShift-JISだと勝手に解釈される
これを解決するには、ソースファイルにUTF-8のBOM(0xEF 0xBB 0xBF)を付ける
他の環境でも(よほど古くなければ)BOMは正しく解釈されるので問題無い

2) 文字列リテラルが勝手にShift-JISに変換される
BOM付きのUTF-8ソースファイルをコンパイルしても、過去の互換性からかShift-JISに変換してから
プログラム中に書き込まれる
これを回避するには、プログラム先頭で以下のpragma を宣言する

#if defined(Q_OS_WIN32)
#pragma execution_character_set("utf-8")
#endif
115デフォルトの名無しさん
垢版 |
2020/06/26(金) 08:10:27.14ID:O2lfWVqP
/utf8オプションつけりゃいいんじゃないの
116デフォルトの名無しさん
垢版 |
2020/06/26(金) 13:06:49.31ID:PjbtVFt+
/source-charset:utf-8 /execution-charset:utf-8
117デフォルトの名無しさん
垢版 |
2020/06/26(金) 13:08:52.73ID:PjbtVFt+
>>116 で BOM も不要
2020/07/04(土) 11:44:18.55ID:TS5b/UER
QMLのSplitViewってハンドル上にカーソル持ってってもカーソルの形が変わらないのって普通?
2020/07/06(月) 07:44:04.78ID:CV9wgtZz
5.15のMSVC2019環境ではカーソル変わるよ
2020/08/30(日) 09:19:37.26ID:vbJSx4vV
Qt6ってオープンソース版の提供は商用版から1年遅れるって話あったけど、
結局どうなったんやろ?
121デフォルトの名無しさん
垢版 |
2020/08/30(日) 14:01:58.32ID:GgAZZaQa
Perl6って結局どうなったんやろ?
2020/09/11(金) 19:47:35.61ID:vL4h/iJU
Qt5.15.1がキターーーーーーッ!!!
2020/09/28(月) 22:00:51.47ID:iMi4NbKw
マルチスレッドで、QThreadの管理用のクラスを作りたくない人向けの書き方考えたんですがどうでしょう
myClassオブジェクトを作ると勝手に別スレッドに移行して、fin()スロットを呼べば元のスレッドに帰ってきます
2020/09/28(月) 22:01:36.75ID:iMi4NbKw
class myClass : public QObject{
Q_OBJECT
private:
 QThread* th;
public:
 myClass();
 virtual ~myClass(){}
pulic slots:
 void fin();
signals:
 void thread_quit();
};

myClass():th(new QThead()){
 connect(
   this,
   &myClass::thread_quit,
   th,
   [&]{ th->quit(); th->wait(); delete th; }
 );
 moveToThread(th);

 // other initializations

 th->start();
}

void myClass::fin(){
 moveToThread(th->thread());
 emit thread_quit();
}
2020/10/02(金) 13:14:32.74ID:lhs/Zzv9
>>123
素直にQtConcurrentを使え
2020/10/02(金) 13:24:07.57ID:CQjBWPIk
キュートな股間を使う
2020/11/10(火) 19:11:21.45ID:hiC/5cy6
>>121
Qt6はPerl6と同じ運命を辿るという予言ですね?
で、Qt5がforkして新たなQt史が始まるのです・・・
2020/11/12(木) 12:46:01.83ID:/hZrOu15
Qt6でもwidgetは追加なしなんでしょ。Javascript風やるくらいならReact行くわ
2020/11/12(木) 14:20:22.70ID:AJXYfkPS
実際組み込みにライバルが出てきたら
この体たらくでは終わるかもなQt
2020/11/12(木) 17:35:40.49ID:epAR/nsF
出てくると?
2020/11/25(水) 10:42:20.87ID:9s0iE7Zc
C++のGUIフレームワークはQt一択?
2020/11/26(木) 15:13:32.69ID:mHPCh9BG
>>131
数年前にクロスプラットフォーム下でwxWidgetsを試したけど、
環境の差異を自前で解決する必要があるっぽかった。(CMakeとか?)
Qtはqmakeがあって楽。
2020/11/27(金) 15:15:13.73ID:4Efa0NLX
>>132
えっ、CMakeってめんどいの?
QtはqmakeからCMakeに移行するらしいのだが・・・
2020/12/03(木) 02:03:34.69ID:YAQUOpck
Perl6を検索したら
じんめんちょうとケモミミメガネっ娘イラストが出て来たでござる
2020/12/03(木) 19:22:12.66ID:wbyvq2tU
なんじゃこりゃぁ・・
2020/12/04(金) 14:07:07.48ID:xKyYFCXW
Qtの(前向きな)話題がないのが寂しい
2020/12/04(金) 14:27:23.48ID:73vN5HmW
新しく勉強する人はQt4用と古くなってしまったが、オライリーの本でいいの?
2020/12/05(土) 08:57:45.38ID:vIbLkVkt
もうすぐQt6が出るんでさすがに4の本はやめといたほうがいい
2020/12/08(火) 05:23:00.53ID:rGwGc8ih
マルチプラットホームでゴニョゴニョやる人はFlutterに流れた?
2020/12/08(火) 23:04:24.86ID:9BQY2QjS
Qtだからって必ずマルチで動かさなくてはならないということも無いんじゃね?
オレはMFCより使いやすそうだからQt使ってるだけだし・・・
2020/12/09(水) 12:04:19.16ID:FeP1mPcl
初期KDEに感動してQtカッコいいと思っているが動機かな。
LinuxとかはQtアプリがメインになればいいのに、と思っていますが、思っているだけです。
2020/12/11(金) 20:38:19.71ID:W8JmW3Wr
PyQt5スレで質問したが過疎化しているみたいなのでこちらでよろしく。

ラズパイでPyQt5にてソフトを作っていますが、ラズパイごと販売する場合、ソースリストがPythonなんでソース公開になりますが、これでも商業利用だとライセンス違反になりますか?
2020/12/11(金) 23:07:53.61ID:Xb6Q9kn/
>>142
GPL版のpyqt使ってるなら自分の派生コードもGPLにしないと駄目というだけて、商用非商用関係ないんじゃないの
2020/12/12(土) 06:12:15.22ID:0FYow1gT
>>143
ありがとうございます。
自分のもGPLにするので大丈夫ですね。
販促品なので良かったです。
2020/12/15(火) 00:30:57.81ID:qJ1aFYR/
Qtのツールキットってどうやって作ればいいの?
WindowsのQtからラズパイをLANでつないでクロスコンパイルして、デバッグまでしたいのだけどどうやって検索すればいいのかすらわからない・・・
と言うか、ラズパイだとVisual StudioからC#で作った方が楽なんだろうか・・・
2020/12/15(火) 09:49:16.43ID:lCiyDn/+
>>145
ラズパイでARM版Windows動かすという話?
2020/12/15(火) 09:51:29.29ID:x2jnVkC/
そのままググればいくらでも出てきそうだけど
無理しなくてもセルフコンパイルでできるんじゃない?
148デフォルトの名無しさん
垢版 |
2020/12/16(水) 13:42:42.43ID:+Vs3RHJW
Qt6キタ━━━━(゚∀゚)━━━━!!
2020/12/16(水) 15:43:52.63ID:QJd1nMyw
>>145
「Qtのツールキットを作る」
という言葉の意味がいまいち分からない。
Qt自体がツールキットなのだが、それにさらに何かをかぶせた
独自ツールキットを作るという意味か?

>WindowsのQtからラズパイをLANでつないで
これも、Qtはライブラリであって完成したプログラムではないので
それにLANを繋ぐということも意味が分からない。
2020/12/17(木) 00:47:02.12ID:2qkNMdZn
>>146>>149
ツールキットって
プロジェクト作る時に
mingWIN64かVisualStudio2017か選べるようにするじゃん
そのキットのこと
なんかウインドウズ上でもラズパイ用のキットが作れそうだと思ったの
2020/12/17(木) 09:55:24.94ID:hrUJzhO1
>>150
ツールキットって言ってもなにか特別なことをしているわけではなく、ライブラリと設定の集まりだから

1.クロスコンパイラをインストール
2.Qtの依存しているライブラリをクロスコンパイル
3.Qtをクロスコンパイル
4.Qt Createrのオプションメニューでコンパイラやライブラリパスを指定してユーザーカスタムツールキットを作成

でいける。2.が死ぬほどめんどいからお勧めはできない。特にWindowsでは。
2020/12/17(木) 12:56:53.13ID:Ijkl2C0z
vcpkg使うと楽やで
153150
垢版 |
2020/12/21(月) 23:40:40.25ID:e1k6bUCY
二人ともありがと
なんか難しそうだなぁ
vcpkgも難しそう
cmakeとかやったこと無いよ・・
2020/12/22(火) 11:01:32.42ID:RyG/lCSq
>>153
素直にセルフコンパイルしたほうがいいよ。Qtわりかしクロスプラットフォーム性あるんだしWindows使いたければ普段Windowsで開発して必要に応じてラズパイにソース移せばいい。
環境依存する部分あるから無理っていうなら、そもそもそんなもんクロスコンパイル出来ないでしょ。多分
2020/12/25(金) 01:15:51.86ID:u0aldcxK
QtってC++とQMLってあるけど
みんなどっちでやってるの?
2020/12/25(金) 06:05:11.33ID:96G2tBdf
python
2020/12/25(金) 12:14:18.15ID:5DQjcGeE
どなたか御教授おねがいします。いろいろググってもそれらしい記事にヒットしませんでした。

QtでFrameなどのウィジェットを書き換え→印刷→書き換え→印刷....と連続で行うことは可能ですか?
QtでSQLiteのフロントエンドを作ってカード型データベースを作ろうと思っているのですが、
検索結果10件のレコードがヒットして、1レコード1枚の印刷をしたい場合は如何したもんかと悩んでいます。
よろしくお願いします。
ちなみにPyQtです。
2020/12/25(金) 20:39:44.01ID:TByuSfX9
>>157
普通に検索結果Listに入れてループ回してQFrame変更と印刷繰り返すだけやないの?
2020/12/28(月) 11:07:17.58ID:UlDvGW4N
>>158
ありがとうございます。
QPrintDialogをループ前に呼んでループ回すごとにQPrinterクラスに描画&印刷って感じですか?
2021/01/13(水) 18:01:01.88ID:7VVzUimR
QMAKE_INCDIR_OPENGL,EGL が /usr/include/libdrm になるのがムカツク

うざけんな
2021/02/05(金) 21:22:13.17ID:bhn4d8D9
Qt for Rust が欲しいわ〜
2021/02/08(月) 23:33:54.93ID:dQ8TTNE6
直リンは無いけどアーカイブ上に存在する
Qt5.12.10のオフラインインストーラは使ってもいいんだよね?
(ちなみに、LANケーブル引っこ抜いてオフライン状態にしたら、
未登録でもインストール出来てしまう...まあ、オフラインインストーラなんだから
あたりまえかもしれないが)
2021/03/06(土) 02:09:16.52ID:ZmFBbMdQ
個人で商用ライセンス買ってる人いるのかな?
年間5万ちょいだが。
2021/03/06(土) 02:15:34.82ID:t6oqPQ7k
>>162
直リンあるぞ
ダウンロードサイトから薄ーい色で書いてあるOfflineのところからクリックするとそのページに行く
2021/03/06(土) 02:18:11.20ID:t6oqPQ7k
何かうちの会社がやるとき一人年間6000ドルとか言われて
急いで決めなきゃいけないのに稟議面倒くさくて結局止めちゃったのに今そんな金額なのかよ
2021/03/06(土) 06:05:12.50ID:UvQPKsws
一人年間100万だか言われた気が
2021/03/06(土) 08:17:14.46ID:N1UPRC8r
>>164
ほんとだ!いつの間にか直リン出来てるわ
以前は無かったんだけど、サイト更新前だったのかなぁ・・・
2021/03/07(日) 00:20:31.78ID:XG5iDLD/
5.15.3は以前のアナウンスの通り商用オンリーになってしまったな
もしやQt5.15にもフォークの嵐が!?
2021/03/09(火) 00:32:23.71ID:2EcPBb3J
重い腰あげてQMLやるわ
UIが綺麗だもんしょうがないね
2021/03/09(火) 00:52:53.42ID:jPxQYiua
QMLってロジック部分もQMLなの?
なんか解説サイトは入門しか無くていまいち理解出来ん
2021/03/09(火) 01:36:59.88ID:2EcPBb3J
俺もまだ入門読んでる段階だから分からん
けど複雑な部分はJavaScriptで書くらしい
2021/03/09(火) 01:38:41.75ID:2EcPBb3J
実質JavaScript/cssみたいな感じじゃないか
2021/03/09(火) 02:37:14.59ID:QrjThQpk
此方はコア機能はc++で書いてjsはguiの味付け程度にしてる
2021/03/09(火) 08:38:43.07ID:HV3G9kxd
ファイル入出力とかはC++でUIがQMLロジックのほとんどはJS
最近慣れてきてやっとQtQuick悪くないと思えてきた
175デフォルトの名無しさん
垢版 |
2021/03/09(火) 14:13:02.45ID:iP4nVCks
痛いのは最初だけ
レスを投稿する