X



【Win/Mac/Linux/Android/iOS】 Qt 総合スレ 18©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん 転載ダメ©2ch.net
垢版 |
2017/03/08(水) 13:49:03.39ID:jMX+hATM
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/
0279デフォルトの名無しさん
垢版 |
2017/08/22(火) 05:15:53.78ID:dZt/Vmcy
Qt Creatorを2つ起動していると頻繁に
ビルドメニューが死ぬ。

左側のタブバーのビルドボタンも使えなくなる。
こうなるとQt Creator再起動するしかない。

めんどくさい。
0283デフォルトの名無しさん
垢版 |
2017/08/30(水) 14:02:26.60ID:f2lCwifz
windeployqtを実行したら用意してくれる translations/qt_XX.qmが、
実は置いただけじゃ自動で読み込まれないことに気付いた。

コード書いてやる必要あるってことかな。
0284デフォルトの名無しさん
垢版 |
2017/09/02(土) 13:41:09.61ID:49veOKAi
QtCreatorのclangbackendほんと頑張ってるなぁ
独立プロジェクトにしてlanguage server protocolに対応とかしてほしいけどQt使ってるからあんま歓迎されないのかな
0286デフォルトの名無しさん
垢版 |
2017/09/03(日) 07:35:02.93ID:M5j04ZDf
>>285
QtCreatorのClang Code Modelプラグインで使われてる補完ツールです
別プロセスで起動してQtCreatorと通信していて、そのプロトコルをlspに対応させればvscodeとかでもそのまま動くはず

半年ほど前から公式がclangdという似たプロジェクトを始めたけど全然出来が違いすぎるし、clangbackendをQtCreatorから切り離して(さらにQt依存も取り除いて)くれないかなぁ

QtCreatorチームもclangdに関心を抱いていたようなので(http://lists.llvm.org/pipermail/cfe-dev/2017-January/052478.html)協力し合って欲しかったです
まったく同じものを作ろうとしてるのに...
0291デフォルトの名無しさん
垢版 |
2017/09/08(金) 20:55:53.72ID:R1PaVqe/
QtもJavaFXも良く出来ている!しかし、俺はGtk+が好きでGtk+のスレがないから
言わせてくれ!Gtk+もQtQuickやJavaFXみたいなリッチクライアント&簡単なスクリプト作ってくれ・・!
0292デフォルトの名無しさん
垢版 |
2017/09/08(金) 21:42:35.92ID:8EG9mjse
GTK+ってバージョン2時代の激オソ、クソ設計の頃しか知らないんだけど、
最近はマシになったのかな?
0296デフォルトの名無しさん
垢版 |
2017/09/09(土) 23:38:18.55ID:NARqm+LN
qmakeでも意外と色々できるんだが、
設計外のことをやらせようとするととたんに大変になるんだよな。
例えばasmをアセンブルする構文がないから
いちいちカスタムコンパイラ定義して外部コマンドとしてアセンブラを実行する必要がある。
0297デフォルトの名無しさん
垢版 |
2017/09/10(日) 21:05:24.93ID:2A4PE6Nc
WindowsのQtCreatorでBoostが使えません(C1083 cannnot open include fileと言われてしまいます。)

.proファイルに「INCLUDEPATH += "C:\boost_1_65_0"」と追加することにより、
F2キーによってヘッダファイルをたどることができるのですが、
コンパイルすると、上記エラーを言われてしまいます。
絶対パスを指定した場合、使用するヘッダの中で、さらに<>で#includeするファイルをオープンできないと言われてしまいます。
上記パス以外に、どのような設定が必要でしょうか?

OS:Windows 10 pro
Qt Creator 4.3.1bBased on Qt 5.9.1 (MSVC 2015, 32 bit)
0299297
垢版 |
2017/09/11(月) 00:26:00.46ID:KtLHOFTD
>>298
ありがとうございます。解決しました!
0300デフォルトの名無しさん
垢版 |
2017/09/13(水) 09:13:30.43ID:zwSP9Qv/
○次受けが多いほど退場率が早くなる。高くなる

直受けの50万 客:いつまでもうちにいていいよ
3次受けの50万(客は90万払ってる) 客:短期延長していい?
5次受けの50万(客は150万払ってる) 客:作り終わったらとっと出てけ できなかったら即退場だ 
長時間労働 高稼働 高スキル要求が多い 零細フリーランスサイトは5次受けから誰もできない難易度の高い仕事 余り物の仕事を紹介してくる。40万円代でやってくれと これならJIETから3次でいったほうがいいな

372仕様書無しさん2017/08/11(金) 10:31:43.41

JIETに毎月5千円払えば3次から入場できるだろ?
高額をうたうフリーランスのサイトはだいたい5次から45万円
JIETで閲覧応募できる末端価格からさらに搾取するのが高額をみせつけるフリーランスサイトでした
高額案件をみせつけるフリーランスサイトも案件の取得はJIETでした

JIETに加入すれば誰でも3次60万からスタートだ。フリーランスのサイトをやってる
自称エージェントもそこから案件情報を取得しきてる。サイトで60万で釣って40万から55万の間でやらしている。

フリーランスで検索すると引っかかる零細ITがやっているフリーランスのサイトはだめだ。
高額に見せているけど実際は50万前後
JIET等に加入した方がいいよ。案件は毎日千件以上末端価格は60万円 平凡な稼働時間の80万円の案件もある。
ユー子も求人をだしてる。名刺も渡せる。ユー子に名刺が渡せるんだぞ。夢のようだ

自称エージェントはJIET等から流れてくる案件を転売してるだけだった。
労働市場(JIET等)に加入すれば誰でも案件に応募することができた。収入が40万50万台にならなくて済む

エンド - ユー子 - エージェント-(JIET等) 公表価格 90~60 - エージェント×3 = 言い値50万以下
エンド - ユー子 - エージェント-(JIET等) 公表価格 90~60 - エージェント×1 悪質な言い値で50万以下
エンド - ユー子 - エージェント-(JIET等) 公表価格 90~60 - JIETに加入して公表価格で応募できる

eJobgo JIET JISA で検索
優良エージェント・優良サイト
首都圏IT(PE-BANK) クラウドテック プログラマーズ
0301デフォルトの名無しさん
垢版 |
2017/09/13(水) 22:39:48.67ID:j7M2IHHt
Qt4.8.4でQMLを使い始めたのですが、QtChartsやGo言語を使わずに
LineGraphを作成するにはどのようにしたらいいのでしょうか?
0303デフォルトの名無しさん
垢版 |
2017/09/14(木) 11:20:41.82ID:clD3mMzH
ボタンが押されたら新しいダイアログを生成するという処理をしたいのですが…
新しいuiファイルを作成して、それ専用のクラスを作る流れになると思うのですが、
#include "ui_(uiファイル名).h"
としてもビルドできません
一度手動でuicをいじってヘッダを生成しなくてはならないのでしょうか?

また、qt 5.7でwebkitを使いたいのですが、proファイルにQT+=webkitwidgetsと書いてもエラーになります
環境はUbuntuで、sudo apt-get install libqt5webkit5-devも試しましたが出来ませんでした
どうしてでしょうか?
0304デフォルトの名無しさん
垢版 |
2017/09/14(木) 12:28:19.29ID:20aIJat/
>>303
uiファイルで指定したクラス名のQDialog継承クラスを定義してあげないと
uiファイルはC++ソース上で使われない。

そのへんは口で説明するよりQtSDK付属のサンプルソースを読んだほうが早い。
ちゃんと読んでから質問しようね。
0305デフォルトの名無しさん
垢版 |
2017/09/14(木) 13:10:19.67ID:clD3mMzH
>>304
ありがとうございます
帰ったら目を通してみようと思います…
0306デフォルトの名無しさん
垢版 |
2017/09/14(木) 14:56:33.15ID:4BY4zG1Q
>>303
Qt Creatorを使って、ファイルの新規作成から
Qt Designer フォームクラス を作れば自動でcpp,h,uiが作られるよ
...Quickのほうはよく分からんけど...
0307デフォルトの名無しさん
垢版 |
2017/09/14(木) 16:47:29.46ID:clD3mMzH
>>306
なるほど!
そっちでやれば良いんですね…
uiフォームだけ作る方でやってました
0308デフォルトの名無しさん
垢版 |
2017/09/14(木) 18:17:40.76ID:KFJoeqMk
Gtkuickも作ってください(><;)
0309デフォルトの名無しさん
垢版 |
2017/09/14(木) 23:49:24.43ID:OSTuhoAs
そういえば一時期削除されたgtkテーマのサポートが復活したようで嬉しいです
0310デフォルトの名無しさん
垢版 |
2017/09/15(金) 16:44:58.62ID:HEl9ygx/
>303です
デザイナでQWebEngineViewを使いたい場合、QWidgetを配置して格上げすると思うのですが、
ヘッダにQWebEngineViewを指定してグローバルにインクルードするを選ぶと「既にクラスが存在します」と出て格上げできません
自分でQWebEngineViewを継承したクラスを定義しなくてはならないんですか?
0312308
垢版 |
2017/09/15(金) 17:35:36.08ID:4tytpAQF
>>309
Ubuntuのデスクトップ環境もUnityからGNOME(Gtk)になるねw
0313デフォルトの名無しさん
垢版 |
2017/09/15(金) 18:53:12.10ID:NHWCpxw9
Linuxは今自分が動いている環境がGNOMEなのか
KDEなのかを検出する方法がわからなくて嫌になる。
QtはGNOME環境じゃまともに動かない。
0314デフォルトの名無しさん
垢版 |
2017/09/15(金) 19:58:56.00ID:HEl9ygx/
>>311
サンプルからヒントを掴みQWebEngineViewのウィジェットを表示させることには成功しましたが、そこら辺のサンプルは敷居が高く理解できません…
これから読めば理解が進む、というようなものがあれば教えて頂ければ幸いです
0315デフォルトの名無しさん
垢版 |
2017/09/16(土) 01:39:17.07ID:dchIFskE
目的のウィジェットが使われてるサンプルを一通りビルドして動かして、
自分の目的に一番近い使われ方をしてるサンプルを改造することから始めたらいいんだよ。

いじって元のコードがわからなくなるのが嫌な場合は
サンプルコードごと別のフォルダにコピーすること。
0316デフォルトの名無しさん
垢版 |
2017/09/16(土) 08:01:13.00ID:j5XMjM8Q
>>315
なるほど!
そういう使い方も出来るんですね
やってみます
0317デフォルトの名無しさん
垢版 |
2017/09/17(日) 22:47:28.52ID:JkLEtCCy
マンマン、キュッキュッ!
0320デフォルトの名無しさん
垢版 |
2017/09/22(金) 18:00:20.48ID:GfL5jdYV
マジでこの先Qt製の2ch専ブラなんて登場しないのかな...
v2cもjdもいい加減つらいわ...
0322デフォルトの名無しさん
垢版 |
2017/09/22(金) 20:31:43.09ID:R3IMLZyQ
ウィンドウの左端にボタン画像を並べてタブのように切り替えられるコントロールって何かない?
QTabBarのタブに画像を貼るとある程度近くなるんだけど見た目のイメージが違う。
0325デフォルトの名無しさん
垢版 |
2017/09/24(日) 15:39:29.67ID:w3bi2455
ダイアログだかウィザード系でそんなのあったね
QtCreatorのサンプル一覧でもあったんじゃね
0326デフォルトの名無しさん
垢版 |
2017/09/24(日) 16:04:20.80ID:lcAzz3TW
QtのサンプルをQtCreatorで眺めてたが、少なくともサンプルのサムネイルでは見当たらないな。
それからWizardと名のつくサンプルはないようだ。
0330デフォルトの名無しさん
垢版 |
2017/09/26(火) 12:01:21.23ID:lw6HQVs/
QtCreatorのはFancyTabWidgetっていうんだけど、
QtCreatorのコアライブラリと密接に結びついてて単独で扱えない。
芋づる式に20個ぐらいソースファイルの移植が必要になる上に、そのままでは動かんようだ。
0335デフォルトの名無しさん
垢版 |
2017/09/30(土) 00:35:59.17ID:Ed4Qgoxv
QMLってもしかしてスクロール関係が全体的に弱い?

QMLのListBox、100行程度入れただけで
スクロールが耐え難いほど重くなるんだけど
何か軽くする方法とか、別の手段とかない?
画面外のリストはいちいち破棄したり、表示する度に
書いてるようだけど、QMLの描画自体が重いから話にならない
実際には1000行、2000行とか入れる予定だから実用に耐えない

スクリプト言語によくあるような、QMLを予めコンパイルして
描画時スクリプト解析みたいのを無くす方法あればいいんだけど
0336デフォルトの名無しさん
垢版 |
2017/09/30(土) 00:41:04.14ID:Ed4Qgoxv
QMLのスクリプト解析描画が重いのって
ColumnやRowのリピート描画でも言えるな
標準のプログレスバーがダサいからリピートで書いたら
重すぎて高速の更新にまるで使えん
0337デフォルトの名無しさん
垢版 |
2017/09/30(土) 02:44:54.22ID:IqY3f3eU
QML側でどうなってるか知らないが、
ListWidgetやTreeWidgetはC++実装でも重い物だから、
数百項目以上になるなら普通はListViewやTreeViewを使う。
こいつはデータモデルを別途構築して、
Viewクラスがそれをなめて自分で描画するという手順を取る。
0339デフォルトの名無しさん
垢版 |
2017/09/30(土) 03:36:42.72ID:IqY3f3eU
QtはLGPL/GPLの制限がある限りモバイルでは使いものにならないので、
Golangあたりで再実装して、ライセンスもスタティックリンク可能なものにするしか生き残る方法はないと思う。
0340デフォルトの名無しさん
垢版 |
2017/09/30(土) 03:47:41.91ID:g9zoeIYO
xamarinがWPF/macOS/Gtk#にも対応するっぽいしマジで最初からc#学んでおくべきだったかな
最近はクロスプラットフォームなアプリといえばまずElectronでQtなんて早々お目にかかれないし、どんどんjsとc#に吸収されていきそう

Qtにうつつを抜かしてたせいでMVVMにもすっかり乗り遅れちゃったしなぁ
0342デフォルトの名無しさん
垢版 |
2017/09/30(土) 04:24:57.96ID:IqY3f3eU
しかしxamarinの発想は、Qtみたいに同じソースコードでどのプラットフォームにも
同じUIを提供するというものではないからな。

プラットフォームごとにUIは作り直しになる。
しかもC# がネイティブになってる処理系はないから
ツールキットAPIの脳内翻訳が必要になる。
0343デフォルトの名無しさん
垢版 |
2017/09/30(土) 06:12:28.16ID:cUAQCAgs
>>342
つXamarin.Forms
0344デフォルトの名無しさん
垢版 |
2017/09/30(土) 07:44:24.76ID:Ed4Qgoxv
>>337
すまん間違えた、重いのはListBoxじゃなくてListView
もちろんQAbstractListModelを使ってる
DelegateもRectangleとTextだけのシンプルなもの
この重さ、いったい何を想定して作られたんだ?
軽くする方法あるのか?

beginInsertRow-end、beginRemoveRow-endみたいな仕様も
正直めっちゃ使いにくいし、全更新の関数は落ちるし
スクロールバーの位置の保持とかどうすりゃいいねん
0345デフォルトの名無しさん
垢版 |
2017/09/30(土) 08:28:51.38ID:IqY3f3eU
>>343
スレ違いだからスルーする
>>344
C++で実装すると、15000件登録しても描画は0.1秒未満だよ。
もっとも、画面描画で必要な件数しかアクセスされないから、
画面外の件数は描画速度には直接関係ないが。
0346デフォルトの名無しさん
垢版 |
2017/09/30(土) 08:37:41.62ID:Ed4Qgoxv
>>345
描画をQMLにやらせずC++でってこと?
それができるなら是非それにしたいな、サンプルとかどこかにあるかな?

細かいスクロールの位置保持や復元の方法はわからないけど
指定の行までスクロールさせる命令がQMLにあるでしょ
頭の方の行だったらいいけど、ケツの方の行を指定すると
数秒間フリーズしたみたいになる
その間は表示してないからわからないけど、もしかして
指定行までスムーズにスクロールしててあんなに遅いのか?
0347デフォルトの名無しさん
垢版 |
2017/09/30(土) 08:46:26.50ID:IqY3f3eU
>>346
QtSDKのソースコードに含まれてるサンプルの中に
QAbstractItemModel/QStandardItemModelそれぞれのサンプルコードがあるよ。

単なる表示用で行選択さえできればいいのなら、後者で実装すればより簡単。

個人的にはQMLはRAD開発やユーザー拡張用で、
本格的なアプリを作るなら普通にC++で作ったほうが速度出るしつぶしが利くと思う。
0348デフォルトの名無しさん
垢版 |
2017/09/30(土) 09:05:15.56ID:Ed4Qgoxv
>>347
Qt使えとかQML使えというのは上の絶対命令でね
初動からおかしいうえに方向転換できない末期に放り込まれたから

とにかくありがとう、めちゃめちゃ参考になった
表示して選択してだけだから、まさに後者かもしれない、早速調べてみるよ
0349デフォルトの名無しさん
垢版 |
2017/09/30(土) 09:43:30.19ID:D3yJ/guB
FlickableとColumnとRepeaterでテストした限り100件でスクロールが重いってことはない感じ
0350デフォルトの名無しさん
垢版 |
2017/09/30(土) 12:52:11.03ID:Q26XiECH
上の命令なら、商用版でQt Quick Compilerが使えるんじゃない?
まあ、それでもC++ネイティブには負けるけど。
0353デフォルトの名無しさん
垢版 |
2017/09/30(土) 20:56:08.61ID:9zCUTE1/
qtのsignal&slotパラダイムってgoto文みたいだよな
0354デフォルトの名無しさん
垢版 |
2017/09/30(土) 21:12:07.81ID:cUAQCAgs
>>353
どの辺が?
0356デフォルトの名無しさん
垢版 |
2017/10/01(日) 16:59:03.94ID:23xKpMGE
たかがGUIツールキットで独自のコンテナやらスマポやら作りやがって
まともなC++のGUIが欲しい
0357デフォルトの名無しさん
垢版 |
2017/10/01(日) 17:47:20.84ID:A+1idbvt
欲しいと思ったときがチャンスだぞ
というかWindows FormsのC++コピーみたいなのは無いんだろうか
デザイナツール付きで
0358デフォルトの名無しさん
垢版 |
2017/10/01(日) 18:56:27.88ID:+SUmFCcZ
QtはSTLやboostよりずっと昔から使われてるから自前で一通り持ってるんだよ。
だいたいSTLはコンパイラごとに方言があるしな。
0364デフォルトの名無しさん
垢版 |
2017/10/05(木) 20:52:40.55ID:DY6JRVMF
gtkmmはgtk4でc++17をフル活用出来るようになるのかな

かなり前からRefPtrは将来c++にスマポ入ったらそれに置き換えるとか言ってたのに、c++11から6年たってようやく実現されたのは遅すぎるよなぁ

まあgtkはlinux以外での動作が期待出来んしqtは捨てられないけど
でもgtkmmはまともなc++で羨ましいというか健全だ
0367デフォルトの名無しさん
垢版 |
2017/10/06(金) 05:19:33.18ID:ALIv623m
c++どころかプログラミングをあまり知らない人がいきなりqtやるのっておすすめできる?
0371デフォルトの名無しさん
垢版 |
2017/10/06(金) 15:25:39.02ID:sb1fmNZx
cmakeとqmakeどっち使うべき?
出来ればcmakeでやりたいんですが困ることあります?
0372デフォルトの名無しさん
垢版 |
2017/10/06(金) 16:49:49.11ID:uoobo3tb
omake
0373デフォルトの名無しさん
垢版 |
2017/10/06(金) 21:34:26.68ID:mu/tgJRJ
うちはqmakeで統一してるけど、
Qt CreatorはCMakeのプロジェクトにも対応してるようだ。
ただしqmakeと違って直接読めないのでプロジェクト設定の変更に対応させるのが一手間増えると読んだ。

qmakeは一通りのことだとマルチ環境に対応できるが
ちょっと凝ったことをやり始めるとVisualStudioとかには対応できなくなる。
0375デフォルトの名無しさん
垢版 |
2017/10/09(月) 14:42:06.93ID:SrUriMVb
そろそろmoc使わなくてもよくなった?
0376デフォルトの名無しさん
垢版 |
2017/10/10(火) 17:48:16.12ID:lrmqLkjp
mocってやっぱいずれ廃止される運命なの?
https://youtu.be/YWiAUUblD34?t=1h10m20s

なくすとしてもqt6になるのかね

そもそもqtってどれくらいやる気あるんやろ
ブログ記事とかも最近はIoT系ばっかだし(Automationってやつ?)
需要も売り上げもこれからは組み込み機器に偏っていくんだろうなぁ

qt6はメジャーアップデートになるみたいだけどqt4並に互換性なくすとしたらリスクデカすぎるよねぇ
0378デフォルトの名無しさん
垢版 |
2017/10/11(水) 16:27:15.23ID:fVUnPWuA
そもそもC++の規格がここ10年くらいで急速に進歩しただけでな。
Qtはそれ以前からあるんだからしょうがないだろう。
過去の蓄積でできてるんだから。
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況