【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/ 商用に限らず、いろんな大手チップ、デバイスメーカーが評価ボード提供する際 その制御、設定用ツールなんかにもよく使われてるね どんだけ現実を受け入れたくないんだ? 単純にlibQt5系のライブラリが同梱されてるアプリだったり ドライバ層のCソースを流用しやすく、かつマルチプラットフォームも実現する意図が丸見えなアプリで、 メニューのアイコン領域がそのままでLinux 風レイアウト丸出しな、UI に関しては手抜きなアプリ、 律儀にヘルプからQtのバージョンをダイアログで出す、なんてのもある PyQtでのコード付きサンプル提供ってのもあったな 世界最大手、それに近い規模のメーカーが出してくるのは、 この手の顧客がWindowsに限らないためにeclipseのアドオン系かQt製が多い >>703 QtはOSSなんて嘘っぱち、商用で儲けたいだけ >>710 LGPLv3で縛った糞ライセンス、こんなんでは使えない 他人に具体的に根拠要求するくせに、根拠なく、猫の額ほどに狭い視野だけで否定する 小学生かな? 自動車業界でもよく使われてるね。 ナビとかメーターパネルとか。 量産品には使われないとしても(使ってるケースもあるけど)、プロトタイピングは多い。 WindowsとかのPC上で作り込んだものをQNXやAndroidのボードに持って行って動かす、みたいなやり方をしてるとQtが便利。 >>711 Qt Community Licenseで使える範囲のQt系のライブラリは全てGPL/LGPLで使えるじゃん。 それのどこが嘘っぱちなのか全くわからないんだが。 論理的に説明してくれよ。説明できないならレス数の無駄だから黙れ。 >>713 LGPLv3は製品にインストールする方法を教えなければならないのだよ。 そんなことはできない。 >>714 小学生としか指摘できない幼稚園児さん。 >>718 黙るのはお前、LGPLv3とLGPLv2の違いを知らない。 >>715 使われているように宣伝されているだけで実際には使われてない。 >>721 ??? そもそもQtは GPLv2/GPLv3/LGPLv2/LGPLv3 の4つから選べるはずなんだが。 Raspberry PIのPythonプログラムの画像処理でQtを使い初めました。 フルスクリーンで1.jpgを表示後、1秒後にフルスクリーンのまま2.jpgの表示に切り替えたいのですがうまく出来ません。 以下プログラムです。どなたか修正ご教授お願い出来ますでしょうか・・ import sys import time from PySide import QtGui app = QtGui.QApplication(sys.argv) pixmap = QtGui.QPixmap('/home/pi/Pictures/1.jpg') screen = QtGui.QLabel() screen.setPixmap(pixmap) screen.showFullScreen() sys.exit(app.exec_()) time.sleep(1.0) app = QtGui.QApplication(sys.argv) pixmap2 = QtGui.QPixmap('/home/pi/Pictures/2.jpg') screen = QtGui.QLabel() screen.setPixmap(pixmap2) screen.showFullScreen() sys.exit(app.exec_()) せめてお前、Pythonスレでもらったアドバイスを元に修正してから来いよ 各行で何やってるか理解したら、もう少しマシなコードになるだろ QTのMainWindowで、全画面ボタン「□」を消したいです。 setWindowFlagsでできるのでしょうか? ご教示願います。 >>726 setWindowFlagsでできます 公式で MinGW 64bit 版出るようなこと書いてあった気がするけど 無くなったんだろうか? そんなん別に自力でビルドしたって大してかからんのだし。 僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方 役に立つかもしれません グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』 HMJSV Qtで作成したコード(Androidアプリとして完成)を、 Android Studio上で動作させるようにするのは どうすれば良いでしょうか?大変でしょうか? 大雑把な質問ですみません。何らかの指針が欲しくて書き込みしました。 基本的にQtでコードを書いたらQt系の環境でビルドすべきだと思う。 Android StudioがJava以外の言語のサポートをしてるかどうかは知らないが、 QtのC++やQMLをビルドできるものなん? 私ならC#+Xamarinで作るけどな。 コメントありがとうございます。 QtではC/C++で作っています。 Qtのライセンスの関係も含めて、Javaで書き直す必要があり、 同じAndroidアプリをAndroid Stduioを利用することにしました。 そのため仰られる通り、C++/QMLなどのJavaへの移植の難易度が判らず、 どう手をつけていこうか悩んでいます。 何かアドバイスやサイトがあれば教えて頂きたくお願いします。 C++(Qt)からJavaに自動変換したいっていう話なら 世の中五万どころかもっと大量に需要はあるだろうけど 今のところ使えるものなんて聞いたことがないな qtがOpenSSLを見つけてくれないんですが、これ明示的に指定するのはどうやってやるんですか? >C++/QMLなどのJavaへの移植の難易度が判らず 自分で判断出来ないならそもそも移植諦めた方が良い >>738 自己解決 openSSL_1.1に対応って書いてあったからてっきり公式ビルドも変わると思っていたが、公式 ビルドは1.0で、互換性無いから1.1で使いたかったら自ビルドしてねってことですね ようやく自作アプリをWindows/Linux/Macの3OSに対応できた。 長い道のりだった……。 t-kernel もあるぞ もうメンテされてないかも知れんが 知らんがな。 ソースコードは公開してるんだから、欲しければ自分でやったらどうだ。 iOSとAndroidのアプリをQtで作ろうとしたけれどまともなもの作れないじゃないか。 どっちのUIもひどい。iWatch対応ってなっているけれどUIを作れないのは嘘つきだ。 モバイル対応はまったくできていない。 ○Windows アプリをそのままAndroid で動かせる ×Android SDKをフルセットで扱える iOS?知らんがな Qtって誰が使ってるんだろう 話題になったアプリがQt製だったことなんて2年前のopentoonz以来知らないわ ぶっちゃけ、デザインに『凝ってない』アプリか、 Windows でライブラリが同梱されてるかぐらいじゃないと気付かないと思う 業務用、組込み用なんてわかるはずもなく pythonでGUIだとQtくらいしか選択肢ないんちゃうの 手元のPCで見る限り、 ・フリーソフトの動画編集ソフトで海外製のやつはだいたい ・DropBox ・Adobe AIR/OpenCL SDK ・画像ビューアがいくつか、 だな。 スタティックリンクされてるのまでは調べてない。 >>757 Tkinterが標準でしょ・・。 あと、PyGtkもC言語のGtkよりWebページだくさんあるよ。 こちらのゲームツールをwindowsで実行したいのですが http://generalarcade.com/gamepadtool/ エラーメッセージのダイアログが出てしまいます。 ダウンロードして解凍するだけなので再インストールはできないし、 対処方法を探しましたが解決できないため お伺いする次第です。どうやれば実行出来るのでしょうか 検索しても、 1. qt.conf をつくれ → 何のパスを設定すれば良いかわからない 2. depends でパスを調べれ → 対応してもエラー箇所が減らない 3. 作者に聞いてみる → 解凍して実行しろよとのお言葉。わけわからん マシンはwindows10 pro x64,QT5.8もインストールしてみました。 --------------------------- gamepad-tool --------------------------- This application failed to start because it could not find or load the Qt platform plugin "windows" in "". Reinstalling the application may fix this problem. --------------------------- OK --------------------------- >>762 エラーメッセージで検索すると似たようなのが出てくる。 https://github.com/ContinuumIO/anaconda-issues/issues/1270 ・2byte文字を含まないフォルダにファイルを置く ・platforms にある qwindows.dll を exe と同じ階層にコピーする のどちらかで解決できそうだが >>763 残念ながらどちらともダメでした。 回答ありがとうございました。 ファイルパス・PC のユーザー名など、システムに日本語を使うな 半角英数字だけを使え それ、どっちかっていうとmingwの制約かと まぁ開発者にとって気持ち悪さは半端ないけども >>762 それはqwindows.dllが足りないときに出る症状だ。 通常platforms\qwindows.dll に配置すればいい。 qt.confを各と、Qt製アプリが必要とするQtのプラグイン等のパスを変更することができる。 Qt SDKのwindeployqt.exeにアプリのexeをドロップすると、そのアプリが必要とするプラグインや 設定ファイルが自動生成されるからやってみるといいかもね。 回答ありがとうございます。 結果からいうと、動くようになりました。 解凍でwindows10の展開機能を使いました。 サードの解凍ソフトではエラーが出るのです。 作者殿の回答をよくよく見てみれば確かにそう書いてありました。 良かったらそのエラーになった解凍ソフト教えてほしい 当人じゃなく、別件ではあるが、 圧縮解凍ライブラリが静的リンクされてるやつ、 もしくは32bit系当時のソフトだとなりがち メジャーなライブラリで、dll形式で同梱されてるやつだと、 そこだけ更新すりゃ特に問題起きないね たとえばLhaPlusみたいなクソアーカイバだと、 deflate64なzipの展開をぶっ壊れた状態で平気で展開するから 作者に余計なクレームが届く悲劇が起こる。 そのくせLhaPlusは公開したままだしな。 マジ迷惑だわ。 古すぎるそんなの使うなって話だけど それなら公開したままのサイトの責任もあるよな お気楽な無責任バグ修正ビジネスモデル Open Governance → Open Maintenance → Waiting for 3rd party response → Too old → Removed Qt Creatorで開発を始めたところです。 Windowsで、日本語を含む文字列「テスト.txt」を引数に渡すと「???.txt」に文字化けします。 デバッガで見ると、main文のargvの時点で「???.txt」になってます。 QString::fromLocal8bit(argv[1])の結果も同様です。 これってなぜでしょうか? (Linux上では問題なし) >>775 ファイルをUTF-8 BOM付きにしたらイけました。 (コンパイラはVisual C++) ありがとうございます。 ちなみに Visual Studio で、ソースコードを BOM なしにするとひどいことになるゾ 主に日本語コメントがめんどくさくて、 /*これはダメで*/ /* これはOKだ */ 「無料が基本」のオープンソース文化圏で有料ソフトウェアの販売は受け入れられるのか? https://gigazine.net/news/20180725-hiri-on-linux/ このhiriっていうメールアプリQtを使ってるみたい >>777 スペースの有無で上手くいかなかったりするってことですか? BOM なしUTF8にした場合の話ね /*の直後にマルチバイト文字が来ると誤判定されるっぽい まぁVisual Studio としてもBOM ありを推奨してたはずだから文句は言えないのだけど というよりも、プログラムに日本語を混入する方が馬鹿げているので、 プログラム本体は全て英語で作って日本語の部分はコメント程度に留めておくことを進める。 文字列リテラルとかは全部外部化する 昔、YPSと言う日本語+フローチャートな言語があってな・・・・ってまだ作っとんかい!?→不治痛 文字列リテラルを全部外部化するといっても、必ずしもテキストファイルを読み込むコードを手で書く必要はない。 tr("abc") ってプログラム中に書いておいて、Qt Linguistで言語リソースを作ってアプリにバンドルすれば、 実行時には文字列"abc"に対してQtが自動的に 日本語の文字列を割り当てる形でプログラム中に読み込まれる。 もちろん言語リソースの選択はPC環境の言語に合わせて自動選択することも明示的に選択することもできるし、 iniファイルとかを作って自前で差し替えするコードを書くこともできる。 midiの編集ソフトを探しています GUIアプリケーションの開発になるので、VisualStudioでMFCと思い立ち、WindowsAPIにはmidi関連のAPIも含まれてるので、面倒なサードパーティライブラリを用意したりmidi再生部分を自作する手間が省けると思いました 調べたらQtもmidi関連のAPIを持ってそうな雰囲気なのですがどうなのでしょう? ただ、日本語の情報がなさそうでした 確かFluidSynthのGUIがQt製だったように思いますSoundFontが使えるのでmidi化したあとのプレイバックに使えますかね? ふと思ったんですが、スキャンした楽譜からMIDIデータを生成するんじゃなくて、例えばMuseScoreのような楽譜xmlを書き出した方が良いですよね 楽譜の読み方とかよく知らないけど、五線譜のエディタがあっておたまじゃくしを配置するとドレミとか再生に必要な情報がキューイングされて行って、midiファイルをエクスポートする時にmidiのデータ形式に変換されるイメージだった 楽譜の画像解析とか面倒な事はしなくて、ユーザーに楽譜を書かせる感じ openmidiのページにある世界樹ってやつの機能切り出し版みたいな 任意の位置の点が0か1か、と、楽譜、なら、こりゃもう楽譜OCRだろうと思ってたw soundOCRなら意味あるけど楽譜OCRなんて馬鹿のやること 単純にドレミをmidi形式でシリアライズするぐらいならWindowsAPIとかQt備え付けのAPIで充分かな〜と思ってたけど、エフェクトとかも編集したいとか要望が複雑化してくるのなら確かにopenmidi使うのが良いかも openmidiで物足りねぇ俺はもっと変態的な事がしたいんだ!ってなった時にはサウンドプログラミングを学ぶのも手かな Qtで表を表示したいんですけど 1つのヘッダーに2列データを表示するみたいなことって出来ませんかね? >>795 QStyledItemDelegateを使って描画イベントを乗っ取るのが一番簡単だと思う。 基本的には元の描画方法をコピペして乗っ取っても同じ描画になることを確認してから、 少しずつカスタマイズしていく。 >>797 QStyledItemDelegateですね ちょっと調べてみます ありがとうございました QPrintDialogでオプションで設定した用紙サイズが反映されないんですが、 なにか原因ありますかね? printer->setPaperSize( QPagedPaintDevice::A3 ); printer->setPageOrientation( QPageLayout::Landscape ); QPrintDialog *printDialog = new QPrintDialog( printer, 0 ); printDialog->enabledOptions(); 質問です C++ではこんな風に書けばメインスレッドに簡単に投げられますがpyqtで似たようなことをするにはどうすればいいでしょうか? QObject::connect(&QObject(), &QObject::destroyed, [&]() { }); こんな風にしたいんだけどどうすればいいのか全くわからない そもそもconnectが見つからない from PyQt5.QtCore import QObject QObject.connect(QObject(), QObject.destroyed, lambda: print("print")) フラットデザインといいますかwebページっぽいデザインにしなくてはいけなくなったんですが webengineを使わずにそれっぽいデザインのサンプルはどこかにないでしょうか? Qtアプリの見た目を変更するのはWidgetにStyleSheetを適用するんだが、 アプリ全体に同じようなStyleを統一的に適用するためのThemeという仕組みが存在する。 基本的に各OSごとに用意されているわけだが、フラットなUIを実現してくれるThemeがなにかあるかもね。 見つけたら報告してね。 ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.5 2024/06/08 Walang Kapalit ★ | Donguri System Team 5ちゃんねる