【Win/Mac/Linux/Android/iOS】 Qt 総合スレ 18©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
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 総合スレ 17
http://echo.2ch.net/test/read.cgi/tech/1438593408/ たかがGUIツールキットで独自のコンテナやらスマポやら作りやがって
まともなC++のGUIが欲しい 欲しいと思ったときがチャンスだぞ
というかWindows FormsのC++コピーみたいなのは無いんだろうか
デザイナツール付きで QtはSTLやboostよりずっと昔から使われてるから自前で一通り持ってるんだよ。
だいたいSTLはコンパイラごとに方言があるしな。 https://www.youtube.com/watch?v=YWiAUUblD34
CppConのQtプレゼンだけやたら低評価多いな
他に比べて高評価も少ない
Qtはみんなに嫌われてるんだよね gtkmmはgtk4でc++17をフル活用出来るようになるのかな
かなり前からRefPtrは将来c++にスマポ入ったらそれに置き換えるとか言ってたのに、c++11から6年たってようやく実現されたのは遅すぎるよなぁ
まあgtkはlinux以外での動作が期待出来んしqtは捨てられないけど
でもgtkmmはまともなc++で羨ましいというか健全だ gtkmmはAPIはいいけど、本体の gtk がねぇ... c++どころかプログラミングをあまり知らない人がいきなりqtやるのっておすすめできる? PyQt/PySideでPythonから使ったほうがいいかもしれない。
wxWidgetをPerlから入るのはどうですか?
資料少ないですかね
Beが… cmakeとqmakeどっち使うべき?
出来ればcmakeでやりたいんですが困ることあります? うちはqmakeで統一してるけど、
Qt CreatorはCMakeのプロジェクトにも対応してるようだ。
ただしqmakeと違って直接読めないのでプロジェクト設定の変更に対応させるのが一手間増えると読んだ。
qmakeは一通りのことだとマルチ環境に対応できるが
ちょっと凝ったことをやり始めるとVisualStudioとかには対応できなくなる。 mocってやっぱいずれ廃止される運命なの?
https://youtu.be/YWiAUUblD34?t=1h10m20s
なくすとしてもqt6になるのかね
そもそもqtってどれくらいやる気あるんやろ
ブログ記事とかも最近はIoT系ばっかだし(Automationってやつ?)
需要も売り上げもこれからは組み込み機器に偏っていくんだろうなぁ
qt6はメジャーアップデートになるみたいだけどqt4並に互換性なくすとしたらリスクデカすぎるよねぇ そもそもC++の規格がここ10年くらいで急速に進歩しただけでな。
Qtはそれ以前からあるんだからしょうがないだろう。
過去の蓄積でできてるんだから。 >>376
古いC++を見捨てるときになくなる
デスクトップは儲からない、モバイルは使い物にならない、
残るは組み込みしかない、つまらない nvidiaのgraphics debuggerってQt製?
https://youtu.be/3D1QVspMF8w?t=13m34s
ドックウィジェットをドラッグするときVisual StudioでいうGuide diamondが表示されてるけどQtでもああいう挙動は実現出来るの?
そういうライブラリってある? QtCreatorの挙動で一番戸惑うのが
ドッキングウィンドウの挙動。
まあ慣れたけどさ。 http://blog.qt.io/blog/2017/10/06/qt-5-9-2-released/
5.9.1から300近くのバグ修正(多過ぎ)、1000以上の変更(変え過ぎ)。
未解決バグ(機能不足は含まない)は五千以上。 >>386
ウィジェットのドックなら簡単にできる。
QMLではできない。 >>389
絵文字とカラー絵文字はやっと最近表示はできる。文字が重なって使い物にならない。 devicePixelRatioの扱いがようわからん。
1.0以外の表示ができる環境がない。 >>391
VMでUbuntuのUnityかGNOMEを動かせば試せる。
設定はLinux HighDPIで検索すれば見つかる。倍に設定すれば2が返る。
古いUbuntuはHighDPI対応していないので最新のを。 >>392
どもども。Ubuntu-16.04.2 のunityでunity-control-centerを使って
メニューとタイトルバーの拡大縮小を1.5に設定してみた。
タイトルバーとメニューのテキストが文字通り1.5倍になるが、
自作アプリで表示してるアイコンや画像のDPIはそのままだ。
アイコンの表示サイズを変更する機能は自前で用意してるので
このフラグをオンにすれば問題なく使えそうだ。
一番懸念していた画像のリサイズの品質はVirtualBox上では問題なく動いてるように見える。
あくまでエミュレーター上の話だが。 qt製の2ch専ブラ真面目に欲しい😢
PCでも絵文字を使いたいんだ😭 >>394
10年以上前からその話聴くけど無いってことは需要無だろ 古参ならkitaというKDE用のQt3製の専ブラがあるで(http://kita.osdn.jp/)
最近でも作ろうとした人はいたみたいだし
Qtによる2chブラウザ MonaCute
https://anago.5ch.net/test/read.cgi/software/1364969160/
専ブラのまがい物みたいなの作ってる
http://askmona.org/3396
でも皆失敗してしまったんだ
もうここの住人しか希望が残ってないんだ😵 あ、2番目のやつはAskMonaというサイト用の専ブラか😅 デスクトップでも2chmateが最強か
情けない😢
2chMate 0.8.9.52/chromium/App Runtime for Chrome Dev/5.0/GR >>396
どんなしょぼい2ちゃんブラウザでも期待はされるから需要はある qt3dstudioが一応オンラインインストーラからインストールできるようになっているよ
βだけど AtlassianのHipchatのwindowsアプリQtで作られているらしいんだけど、
日本語入力時にバックスペースで文字消すとき
二回押さないと文字が消えなかったり
確定した文字まで多めに消したりとかなり使いにくい
これってQtのせいなのかな?
MinGW使うのやめてVisualStudioでコンパイルすると治るという書き込みも見たけど
Qtで日本語扱うならMinGWよりVisualStudioがオススメですか?
バグレポート
https://jira.atlassian.com/browse/HCPUB-268
Hipchat ダウンロード
https://www.hipchat.com/downloads 日頃からVisualStudio版とmingw版は並行して扱ってるけど、
QtSDK自体のTextEditでそんな不具合見たことないな。 今時UTF-8以外の文字コードでソースコード書くやつなんておらんやろ。 つい最近、visual studio codeのvimプラグインで、そんな現象に出会ったなぁ。
日本語編集時に意図しない文字が消えたりするやつ。 ちなみにQtにzipファイル展開させると、日本語を含んだファイル名が化ける場合があるからな
わざわざパッチまで用意して報告したのに、
動作確認コードを別途用意しろなんて舐めたことを言い出したので放置したが。 >>413
原因は何だったのでしょう? iconv の自動判定ミスかな。 zipのヘッダはある程度の柔軟性があって、内部に格納するファイル名のエンコード方法を指定するフラグがある。
つまりMBCSとUTF-8の2パターンでどちらかが使われるわけだ。
当然zipのヘッダを読んでどちらでエンコードされているか確認しながら処理しないといけないわけだが、
QtのQZipReaderは一部がMBCSでハードコーディングされているところがある。
するとUTF-8で格納されてるzipは正常に読めない。
まあそもそもDeflate64に対応してないんだから、本格的な対応とはいえないけどね。 >>415
詳しい解説ありがとう、そういう内容か。ASCII文字通り扱う分にはどっちでも支障ないし、マルチバイトのテストなんかロクにやってないんだろうね。 それじゃあマルチバイトで問題多発するのも当然だね。 それとは話は別だと思うぞ。
QStringは常にUTF-16で文字列を保持してるから、
サロゲート問題を除き、正しく扱えば文字化けすることはない。
つまり、OSのAPIなど外部APIとやり取りするときは常にそれらのAPIが
何の文字コードで文字列を必要としているかを確認し、
toLatin1()
toStdWString()
toUtf8()
などを適宜使い分けてそれぞれの部分で正しい文字コードを指定してあげないといけない。 Qtがフォントの中にグリフが入っているかどうかを判定するのを間違って
入っているのに入っていないと判定して文字化けしたのは何度もあった >>415
それzipの問題じゃなくてwindowsの問題だろ >>420
違うよ。
説明のわかりやすさのために敢えてMBCSと表現してるけど、
これは純粋にzipの仕様とQZipReaderの実装の問題だよ。
OSに関係なくこの問題は発生する。 Win上でUTF-8のファイル名で展開されても困る気がする 気がするのか。
わしは困る!と断言できる者はおらぬのか。 >.>422
全然違う。
zipに格納されているファイル名を何の文字コードとして管理し、
QStringの文字列として取り出すかどうかという話。
動作するOSのファイルシステム上のファイルの文字コードとは全く関係ない。
とんちんかんな発言ばかりする前に、ちっとは実際のソースコードを読んだらどうだ? 何でソースなんか読まないかんのよと言いたいところだが。
Qtはソース読まないと使いものにならんもんな。 むしろなんでソースコードを読まないのか。
『プログラムは思った通りに動かない。書いたとおりに動く』
の原則のとおり、公式マニュアルで不明な部分やマニュアル通りに動いてない部分があったら
ソースコードに実際に当たるべきだ。
これはQtに限らずあらゆるOSSのプロダクトに共通の態度だと思うけどな。
それに、むしろQtのソースは読みやすい部類だ。
7zとか読んだらじんましんが出そうだぞ。 それLinuxユーザーの言うUNIXの精神だよね。
ソースが仕様って。
ところが一般的には仕様と違えればソースを修正する。
ソースに合わせて仕様の方を変更することはない。 仕様と実装の齟齬なんて話は全くしてないんだがな。
マニュアル通りに動いてなければソースコードも疑えと言ってるだけなんだが。
話がとんちんかんすぎて、
レス書いてるのが馬鹿らしくなってきたんだが。 元々丁寧に説明してくれているけど、まとめると、
・zipファイルにはUTF-8でファイル名を格納する仕様があるが、QtZipReaderはその仕様に対応していない。
・ゆえにQtZipReaderでUTF-8でファイル名が格納されたZipファイルを展開しようとすると、QtZipReaderで読み込んだ時点でファイル名が文字化けする。
・また、Zipファイルの解析はQtZipReaderが行うので、OSの機能は関係しない。
って、これだけのことだろー。 QtZipReaderの仕様がどうだか知らんけど、
仕様でUTF-8でファイル名が格納されたZipファイル名に対応していることになっているなら、実装のバグ。
仕様でそのようなZipファイルに対応していないなら、仕様が古い。⇒対応するよう、仕様と実装を更新。 だね。
より正確にはUTF-8形式でファイル名が格納されたzipファイルを読み込むと、
ファイルリストは正確に列挙されるが、それが入ったQStringListにあるファイル名で展開しようとすると
なぜかファイルのマッチングに失敗して何も展開されないという挙動をする。
その原因が上に書いたもの。
そして話は >413 に戻る。 ユーザー名・ファイル名などのシステムには、半角英数字だけを使うこと
日本語などで、テストしている開発者は、世界に1人もいない ちなみに、LinuxやMac環境だと更に悲惨なことになるぞ。
UTF-8で格納されてないと、ファイル名の文字コードが不明だから
どうやってQStringに読みだしたらいいのかわからん。
マルチリンガル対応のアプリだとSJISと決め打ちするわけにも行かないし。 ZIPのEFS対応は未だにMacでも怪しいから、Qtだけの問題でもないんだけどね。欧米圏では問題ないからやる気ないんだろう >>431-432
日本語をサンプルにするから要求が通らないんだよ
クリル文字をサンプルにしとけばすんなり通ったかも知れないぜ >>437
ラベルやテキストエディットで濁点と半濁点がついた文字が2文字に分かれて描画されてしまうバグの優先順位が低いので
ドイツ語のウムラウトやフランス語のセデューユが2文字になるのと同じことだと説明したら優先順位が上がってすぐになおったことがある 別にQtに限らず
フリーソフトで日本語まともに表示できないのはよくあるだろw
文句が有ったら使うなよ! >>431
明らかなバグなんだから、
問題があるzipファイルを報告すれば取り込むでしょ。
もうひと押しお願いします。
それにしても、QZipReaderってヘルプに載ってないのね... >>442
求められたのは不具合が発生するzipファイルでなく、バグを再現するテストコード。
そこまでやってやる義理はない。
QZipReaderはプライベートなクラスだから、使うときはqmake側に
QT += core-private
などと書いてあげないといけない。 >>443
丸投げなのね...
ありがとう、使い方はわかりました。 >>445
そうだよ。
>>444
443はパッチまで作って送ってる。 パッチ送るだけなら楽だけど
取り入れて良いか確認する方は手間掛かるよ >>446
QMLコンパイラは、お試しもできないのか
QMLは重い、使いにくいもんだという経験上の概念が定着してしまってるから
試すこともできないものはリスクでしかない >>448
商用版に付いてくる Qt Quick Compiler の原型(?)は github からダウンロードできるみたい。
使ったことないからどこまで使い物になるかはわからないけど。
https://github.com/qmlc/qmlc
>QMLは重い、使いにくいもんだという経験上の概念が定着してしまってるから
元々 JavaScript みたいなもんだから Widget に比べて重いのは仕方ないけど、rapid programming には結構便利だと思うよ。 Qtに必要なのは、QMLよりもXAMLだと思う。
MVVMの普及が必要だ。 >>450
githubのは商用版に対抗して作られたもの制約や問題が多い >>403
cppとhが99%以上
qmlは1%未満
こういうものを作るにはC++ Archのpacmanで入れたQtCreatorがHelpでフォントのサイズの変更が出来ない...
誰か解決策知りませんか ■ このスレッドは過去ログ倉庫に格納されています