TOP カテ一覧 スレ一覧 100〜終まで 2ch元 削除依頼
Androidプログラミング質問スレ revision50
【信者】C++の問題点【アンチ】
ふらっと C#,C♯,C#(初心者用) Part142
【実験台】 Python 3.0 のお勉強 Part 1 【非互換】
関数呼出しはgoto文である
△△もっとStruts2の良さを教えてくださいSsssion6
いもうとデスクトップを実際に作ってみないか?3
OpenGL 2.0 専用スレ
おまいらはディープラーニングの検定試験受けるの?
【アンチ】関数型言語は使えない【玩具】 2

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


1 :
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.sc/test/read.cgi/tech/1438593408/

2 :
■リンク

・Qt Project
 http://qt-project.org/

・Qtユーザー会
 http://planet.qt-users.jp/
・Qt Users Forum Japan
 http://qtusersforum.s2.zmx.jp/forum/index.php
・Qt Creator を日本語化するプロジェクト(非公式)
 http://qt-creator-jp.sourceforge.jp/

・PyQt4(GPL。定番)
 http://www.riverbankcomputing.co.uk/software/pyqt/intro
・PySide(LGPL。)
 http://www.pyside.org/downloads/


■ライセンス関連まとめ

各ライセンスでの自作アプリのソース公開/頒布

Qtのライセンス   アプリのライセンス     Qtの頒布/(変更部分のソース公開)
GPL           GPL(ソース公開必須)      必須
LGPL         任意(ソース公開不要)      必須
商用          任意(ソース公開不要)      不要

*: LGPLは動的リンク時

実際には他にも条件(リバースエンジニアリング関係とか)あるので、
きちんとライセンスの条文を読むこと。

3 :
|....,,__
|_::;; ~"'ヽ
| //^''ヽ,,)
|  i⌒"
| ∀`) < 誰もいない きのこるならいまのうち
|⊂
| ノ
      _,,,......,,__
  /_~ ,,...:::_::;; ~"'ヽ
 (,, '"ヾヽ  i|i //^''ヽ,,)
   ^ :'⌒i    i⌒"
      |( ´∀`) < きのこ のこーのこ げんきのこ ♪
      |(ノ   |つ
      |     |
     ⊂ _ ノ
       ""U
      _,,,......,,__
  /_~ ,,...:::_::;; ~"'ヽ
 (,, '"ヾヽ  i|i //^''ヽ,,)
   ^ :'⌒i    i⌒"
     (´∀` )| < エリンギ まいたけ ブナシメジ ♪
    ⊂|  (ノ |
      |     |
      ヽ _ ⊃
      .U""
|
| ミ
| ミ  サッ!
| ミ
|

4 :
>1 いちもつ

5 :
Linux 上で Qt のアプリをターミナルから起動すると
Qt: Session management error: None of the authentication protocols specified are supported
というメッセージが出るんだけど、これって何でしょう?
動作自体は問題ないようです
新しいプロジェクトで作成して手を入れていない Qt ウィジットアプリケーションでも表示されます

6 :
いろいろ確かめていたところ root で起動すると出るようです
root 権限必要なプログラムなのですが、このメッセージがでちゃうのは回避できないのかな

7 :
商用の機械の制御ソフトをLGPLで開発し、
機械を売った場合、ソースコードの開示を
求められたら応じなければなりませんか?
ソフト単体で売ることはありません。

8 :
そのつもりでどうぞ

9 :


10 :
>>7
LGPL v2ならそのソースコードの開示が必要。
LGPL v3ならさらに機械にインストールする情報の開示が必要。
開示を求められたら応じなければならない。
ソフト単位で売るかどうかは無関係。
LGPLなものを使っているのを明記しないのもだめ。

11 :
それGPLじゃね

12 :
ウィキペディアでは、「LGPLなプログラムを利用する著作物が二次的著作物か
否かは法的な問題である。ライブラリに動的リンクする単体の実行
ファイルは、法的に二次的著作物ではないと解釈される可能性がある」
とありこの場合は、exeのソースコード開示はしなくてはよいのでしょうか?

13 :
でも実は特許でも侵害していない限り、開示しなくても訴えられる事はないんだよな。

14 :
>>11 >>10 のそのソースコードはLGPLなものを指す。アプリは開示の必要はない。

>>13 実際バレれば評判が落ちるくらい

15 :
>>7を自然な日本語として解釈する場合、制御ソフトをLGPLにする
という前提だから、求められれば制御ソフトのソースを開示する必要がある

16 :
PC用のソフトじゃないし、別に特殊なロジックを書いてるわけでもないから別に構わんけどな
公開してマズいのはデータだけでさ

17 :
>>16
LGLP v3 なQtはインストール情報の開示が必須なので中のデータを見られたり、
Qtにファイルアクセス内容をダンプするコードを埋め込んだのをインストールされてデータを抜き取られるかもしれない。

18 :
>>17
自分の端末に入ってる自分のデータなんざ好きに見ればいい

19 :
>>18
機械に入っている見られたくないデータを見られてしまう

20 :
>>19
たとえば?

21 :
そんな正規のインストール手順が必要なレベルのやつが
解析だの抽出だの、高が知れてる

22 :
禁止されていても無視してリバースエンジニアリングすればいいだけの事さ

23 :
>>21
正規なんか関係ない、インストール手順が出るというだけでだめ
>>22
LGPLではリバースエンジニアリングを禁止してはいけないとなっている

24 :
無法者なら禁止されていたからと言って律儀に守るわけ無いだろう
禁止しようがしまいが結果は同じ

不正アクセス禁止法や著作権法に引っ掛かる行為は訴える事もできるし

25 :
オワコン

26 :
そもそもQtをLGPLでライセンス利用する形で実行プログラムを別ファイルとして自分で書くなら、
LGPLからくる制限は、リバースエンジニアリングを拒絶できない、という部分くらいだよ。
自分が作るプログラム部分はソースコード開示の必要はない。

それにQtは年30000円ぐらいで商用ライセンスもらえるから、
企業がアプリ作るならそっちのほうが手っ取り早いかもしれないよ。

こっちならLGPL版と違ってexeに静的リンクだってできちゃうし。
昔からSkypeのPC版がこれで作られてるのは有名な話(MSに買われて以降は知らないけど)

27 :
年30000円どころじゃない話を前スレ辺りで見た気がしたんだが

28 :
>>26
リバースエンジニアリングに加えてLGPL v3 なので組み込みで機器にインストールする方法を開示しなければならないのが制限が大きい。
30000円ではない、安い商用のStart-upsは$948/年で、総収入$100,000未満が条件。

29 :
消費者向けじゃないのなら公開の義務は無いらしいが
それって何処までなのやら

30 :
今は年$3540 らしいね。昔はこんなにしなかったんだがなあ。
https://www.qt.io/buy-product/

組み込み機器にLGPLのソフトウェアを組み込む際について議論してるのは、日本語の範囲だとここくらいかなあ。
https://srad.jp/~vyama/journal/409182/

『組み込みで機器にインストールする方法を開示しなければならない』って何条の話?

通常の用途だとLGPLでQtを利用するだけで十分じゃん? て感じだな。

31 :
>>30
4.結合された作品(e)の条項

32 :
>>31
なるほどで。これ通常はブートローダとCランタイムとこのスレの場合Qtのソースコードを公開すれば済む話だよね。
インストールの手順までは示されないのが通常。ソースコードを提供したんだから自分でやれ、ということになる。

33 :
>>30
月あたり約3万なら安いな

34 :
no demand
no future
no developer

35 :
>>34
indeed
https://trends.google.co.jp/trends/explore?q=Qt%20GUI

36 :
Developer Survey Results
http://stackoverflow.com/insights/survey/2015
no Qt Creator, no Qt
http://stackoverflow.com/insights/survey/2016
Qt Creator 0.7%, no Qt
http://stackoverflow.com/insights/survey/2017
no Qt Creator, no Qt

37 :
なんなのこいつ

38 :
日本語じゃないと読めないんだが

39 :
The evidences you have to realize what Qt is.

40 :
Qtはやめておけ

41 :
QtはPC向けとしては使いやすい。
Win/Mac/Linux対応のプログラムが簡単に書けるし、
ライブラリはよく整備されてると言っていい。
GUIベースのIDEもあるから特にLinuxではありがたみが増すだろう。

.NETじゃ動作速度が不満、っていうならいい選択肢なんじゃないか。
boostやSTLとも共存できるし。

一方でスマフォやタブレット向けにはGPL/LGPLの制約がかかってきて、
事実上OSS開発にするか商用ライセンス買うかの2択にならざるを得ない。

42 :
PC向けはそう思う。
スマフォやタブレット向けには、プラットフォームネイティブと比べて、操作と見栄え、機能のどれもがひどく劣化していて使う気になれない。

43 :
スマホきらい

44 :
ライセンス高杉

45 :
はっきり言って、Qt使うとすっげえ作りにくい

46 :
>>44
PC向けに使う分には楽になるので高くない。
>>45
スマフォやタブレット向けにはそう思う。

47 :
Visual Studio 2017にはいつごろ対応予定?

48 :
>>47
https://wiki.qt.io/Qt_5.9_Tools_and_Versions
対応予定はまだない

49 :
UbuntuのCanonical、「Unity 8」開発打ち切りを発表 スマホの取り組みも終了
http://ascii.jp/elem/000/001/465/1465307/

50 :
gnome > kde

51 :
>>50
C++のままでうまくやっていればgnome<kdeだっただろう。
QMLなんかにするからUnity8とKDE5はしょぼくて役立たずになってしまった。

52 :
QMLヤバいくらい使えないな

53 :
LINEのデスクトップ版でQtが使われているという記述を見たんだけどマジ?

54 :
>>53
qtのdllインストールするからマジだと思うよ

55 :
QStringの使いにくさは凄いな

56 :
>>55
むしろC/C++の文字列処理が頭おかしいくらい何も考えてないのであって、
Qt上でQStringとQByteArrayを使うだけならノーストレスで何も考えずに使えるよ。

QString <-> std::string/std::u16string
QString <-> const char*

の相互変換については基本的にQString側のメソッドを呼び出せばいいが、
C++特有のインスタンスの寿命問題があるので気を使う必要があるな。

57 :
>>53
かなり頑張ってよく作ってある。
だけど、Qt自体の問題でテキスト入力のキー操作がブラウザなど他のアプリと同じようではないのでとても使いにくいし、
日本語入力中に文節区切りがわかるように表示されないので入力がしにくい。
そんなだからChromeからLINE使った方が格段に使いやすい。

58 :
>>56
楽なんだけれどUTF-16の並びでしかないから絵文字などがあると面倒なコード書かなくちゃならない。
Qt5.10のQStringViewで使いやすくなるように思えない。
https://doc-snapshots.qt.io/qt5-dev/qstringview.html

59 :
>>58
そんな特殊な環境知らんわ。
機能が足りないなら自分で実装してフォーラムに投げればいいんじゃね。

60 :
なるほどね。サロゲートペアが含まれると、QString::length()の言うところの
戻り値は文字の数ですよ、という前提が崩れるわけか。

文字の数にこだわるならtoUcs4()やtoStdU32String()で他の形式に変換する必要があるわな。

ここはもういっそQChar を UTF-16からUcs4に変えてしまったほうが全体的に楽になりそうなものだが、
現状では頑なに内部16ビットを固守してるようにみえる。

まあ頑張れ。

61 :
今話題のAnimeEffectsってのがQt製みたいね

62 :
>>61
動かしてみた。Qtで作ってこんな情けないUIというのはあんまりだ。

63 :
>>62
どうせゴチャゴチャしてりゃ偉いと思ってるだけだろ

64 :
そもそもQt製でまとまなUIを見たことがない

65 :
君の言う、まともなUIって定義はなんだ?
そもそもKDE自体がQtで作られてるわけだが。

66 :
>>65
Linuxで動いているKDEはKDE4まではよくできている。他のプラットフォームがひどい。
AnimeEffectsは、
QGroupBoxのタイトルテキストが枠にくっついて隙間がなかったり、枠に重なってしまっている。
QPushButtonがプラットフォームスタイルでない。
フォーカス枠が細く正しい太さでない。
QComboBoxの大きさが小さすぎて正しくない、テキスト上下位置もずれている。
ヘルプで表示されるダイアログのクローズボタンをクリックしてもクローズされない。OKはクローズされる。
タイムラインゲージのテキストが欠けたりハンドルとテキストが重なっていたりする。

67 :
>>65
>まともなUIって定義はなんだ?
動作しているプラットフォームで、そのプラットフォームネイティブなUIと同じ見栄えと同じ操作感で違和感なく動作すること。
以前はよかったが最近のQtはそれがだめになっている。QMLになってさらにだめでQMLでデスクトップアプリケーションは作る気にならない。

68 :
QMLは、あくまでもJavaScriptの柔軟性でUIデザインと応答の同時作り込みをやりたいというのが主眼で、
OSのルックアンドフィールを遵守するという目的ではないと思う。

どちらかというとスマフォやタブレット対応で必要になりそうな技術。

それとQt5.6でアプリを公開してるけどネイティブ実装と違って困った、なんてことはまだ一度もない。
ただしQtがネイティブOSで何をやってるかソースコードを読んで全部理解しながら作る必要がある。

69 :
>>66
最後二つはまだしも他のはただのお前の好みだろ
ボタンがネイティブスタイルじゃないと駄目って
UIデザイナもスタイルシートも全否定だな

70 :
ここには低年収の頭の弱いおっさんしかいないからしゃーない

71 :
>>70
自己紹介乙

72 :
>>68 QMLは、あくまでもJavaScriptの柔軟性でUIデザインと応答の同時作り込みをやりたいというのが主眼で、
UIデザインもUnity8とKDE5で失敗している。
応答はだめ、Qt Quick Controls 1がほとんどQMLで実装して応答がダメでC++で実装しなおされて2になった。
さらに1でのデスクトップ対応より格段の劣化。

>>どちらかというとスマフォやタブレット対応で必要になりそうな技術。
両方で失敗をし続けている。Ubuntu Phoneなど失敗続き。

>>ネイティブ実装と違って困った、なんてことはまだ一度もない。
困らない程度の実装なんだろう。

73 :
>>72
あくまでアプリで適用できるレベルの技術であって、
デスクトップ環境そのものをQMLに置き換えるのは流石に無茶が過ぎるだろう。
MSだってVisual StudioをWPFに置き換えるのに発表後10年ぐらいかかったわけだし。

>困らない程度の実装なんだろう。
正確にはQtの標準実装で正常に動かないことを確認した段階でWin32APIに
処理を差し替えて解決してるから困ってないと書いている。
普通の開発者なら困ってるかもわからんな。

具体的に言うと
ファイル名のソート、ウィンドウのStayOnTop、ゴミ箱に削除、
タイトルバーのコンテキストメニューにメニュー追加、指定したファイルをExplorerで表示する、あたりかな。

Qtを使うことで大半のコードはOS非依存にできるんだが、この辺になるとOSごとに書かないとしょうがないみたいだ。

74 :
QMLで何かを作ろうと思ったら
いろんな常識を捨てる覚悟と、ややこしい設計の覚悟が必要だな。
しかもビルドが通っても期待通りに動かないことだらけ。
代案探しの方が時間がかかる。

75 :
Electronでおk

76 :
>>※正確には通常「LGPL+商用利用向きの例外条項」を選ぶことにな7ります(Qtインストール先の「LGPL_EXCEPTION.txt」を参照)。
LGPLv3だからLGPL_EXCEPTION.txtは削除されるべきだとメーリングリストに書かれている。

77 :
>>75
Electronのやり方はダメ

78 :
新しいGoogle EarthはQtをやめてChromeベースになった。

79 :
Google Earthだと、Chrome Book向けにウェブベースのものを作らないとしょうがないだろうし、当然の結末だろうなあ。
Chromeで作っておけば作り分けも要らなくなるわけだし。

今はもうWebkit+JavaScriptでテキストエディタやIDEが作られる時代だからね。

80 :
VisualStudioCode >>> QtCreator

81 :
>>80
やればわかるが、node-webkitやelectronはUIセットがないから、
ツールキットに相当するものを自分で作らないといけないぞ。
それ自体が大変すぎて個人にはとても扱えない代物だと感じたな。

82 :
補足すると、
VisualStudioCodeはMicrosoft、
BracketsはAdobe、
AtomはGitHubと、どこもIT業界の大手ばかりなことがわかる。
膨大な開発コストを費やさないと使いものにならないということだ。

逆にアプリ本体がほぼウェブブラウザで済むような内容だと比較的小さなコストでアプリが作れる。
だがそういうアプリもQtで作れることは言うまでもない。

83 :
デバッグ中にブレークポイント貼るとデバッガがおかしくなる

84 :
>>83
Qt Creatorはいろいろバグがあってはまる。

85 :
>>82
Qtで作るよりもプラットフォームに用意されているツールで作った方がちゃんと動くものを作りやすいのが現実だ。

86 :
>>85
それは狭い了見だな。

少なくとも俺が作ってるOpenGLで画面を描画して各種画像の読み込みに
対応して読み込みの先読み機構を付けた
ウィンドウズアプリを作るには、素で作るより遥かに楽だ。

87 :
>>86
大したことをしていないのだろう。その先をしようとするかどうかだ。

88 :
>>87
大したことってなんだよw

89 :
>>87
たかがGUI Toolkitに何を求めているのだお前はw

90 :
エラー: : No such file or directory
#include <QLoggingCategory>
となってしまいます。
公式サイトからダウンロードしてインストールしたのに
QLoggingCategoryがないとなるのは何故でしょうか?
皆様はQLoggingCategoryを別途追加されていますか
それともQtを再インストールしたほうがよいでしょうか

91 :
まず、なにをしたらそのエラーが出たのかを書かないと

92 :
すっかり失念しておりました
新しいプロジェクトとしてproファイルを読み込み、
ビルドしようとしたところ
cppファイルが
エラー: : No such file or directory
#include <QLoggingCategory>
となってしまいビルドできないのです

原因と考えているのはオプション→Qtバージョンで
使いたいと考えているQt5.6.2 gcc_64以外に
自動検出のQt4のお化けがあり何をしても消えてくれず
(削除、クリーンアップ不可)
再インストールしても解決せず途方に暮れている状態です

93 :
まず動作OSを書いてくれ。

Ubuntu16.04.2 で動かしたときは、apt-getで入るQtは使い物にならんかったよ。
公式からインストーラーを落として入れたらツールキットごと入ったからそれでビルドしていた。
そのときapt-getで入った古いバージョンのQtが毎回認識されてたが
インストーラーで入れた方を使う形で設定し直してたな。

94 :
基本的には[ツール]-[オプション]でダイアログを出して、
[ビルドと実行]-[Qtバージョン]でQtツールキットのバージョンの一覧を出して優先順位を決めたりする。

x64とx86は別バージョン扱いになる。

95 :
skypeforlinux-64はQtを使わなくなった。

96 :
OSから入れなおせ

97 :
皆様ありがとうございます。

>>93-94
全く同じ状況です。
優先順位をどのように設定されましたか?

[ビルドと実行]-[Qtバージョン]でQtツールキットのバージョンの一覧で
自動検出のQt4
Qt5.6.2 gcc_64
になっており、削除、クリーンアップができません。
手動で追加することもできません。
何か別途で優先順位を設定する方法があるのでしょうか

どうして古い方のQmakeを優先するんですかね…

98 :
pathがおかしいんじゃね

99 :
>>97
だからOSとそのバージョンを書けって言ってるだろ。
質問の仕方もわからんのか。

まず、Linux系の場合、OS標準の方法で入れたQt Creatorと
Qt公式のインストーラーで入れたQt Creatorはそれ自体が挙動が違うから、
Qt公式のを使いたければOS標準のはアンインスコして使うべき。

それからQt Creatorのツールキットの認識は『キット』と『Qtバージョン』の2段階になっていて、
Qt公式のQt Creatorを起動している場合はバンドルされているツールキットが自動検出になるはず。

まずはQt Creatorのバージョンを確認することだな。うちのはQt公式ので4.2.1だ。

100 :
ubuntu16なんだろよく読めよ

責任とれないが俺のやり方
rootでいらないqtファイル消す(パージじゃ消えない>>99を信じるな)
aptでパージ
新バージョンを公式から落としてインスト
aptでいれなおす
aptでいれたクリエイターを起動
あら不思議自動認識が消える
手動で公式インストqtファイルを指定
いつもこんな感じ

93に指定する方法聞くかos入れ直すほうがいいかもな
しかし>>99のような役立たずな書き込みもめずらしい

101 :
皆様ありがとうございました。

>>100
この方法で自動検出されていたQt4が消え、
Qt5.6.2 gcc_64だけを指定することができ、
エラー: : No such file or directory
#include <QLoggingCategory> が無くなりました。
ありがとうございました。

102 :
>>100-101
なんでだよ。

その運用だとQt Creatorだけシステム側ので全体がチグハグになるだろ。
SDKをQt公式から入れたならQt CreatorもQt公式のを使うのが本道だろ。

ま、動きゃ何でもいいってんならもう何も言わんがね。

103 :
無様

104 :
配布するときにまた揉めそうなやつだな

105 :
何コイツ偉そうと思っていたら
> うちのはQt公式ので4.2.1だ。
最後でお茶吹いたw

106 :
>>105
Qt CreatorのバージョンはQt SDKのバージョンとは違うんだが?
いちいちそんなことを説明する必要ある?

107 :
apt-get で入れる場合、そのubuntu(debian)でランタイム用として公式サポートされているものと
同じバージョンの開発キットがインストールされる

さらにapt-get でインストールできるのはモジュール単位なので、
QtGUI とかの基本以外のモジュールを使う場合は追加でインストールする必要がある

ぶっちゃけ面倒だし、Qt公式インストーラで別途インストールした方が管理も楽

ちなみにユーザー権限でインストールするとホームディレクトリにインストールされる
sudo 付けてインストーラを実行すればそのPC内のユーザーで共用できる(/opt/Qt とか)

108 :
Qt Creatorのヘルプでスクロールすると途中から逆向きにスクロール、なんてバグだ。

109 :
んなもん、公式フォーラムに書けや。アホか。

110 :
>>108
ソース引っ張ってきて直した。Qtのバグだった。

111 :
>>110
公式にパッチを投げるまでがOSS開発者の仕事。

112 :
>>111
OOSのは使っていない。

113 :
>>106
>>107
相変わらず的外れなことばっかりな奴がいるな

114 :
>>112
Qt自体がOSSだ。
>>113
何が的外れか具体的に指摘できない時点で的外れ。

115 :
>>113
Tipsに対して的外れとは、君の的はいったいどこにあるのやら

116 :
101です。
荒れる原因になってしまったので
追加の報告をさせて頂きます。

100さんの方法で自動検出が消え、Qt5.6.2 gcc_64を指定したあとは、
公式のQt5.6.2を利用しています。
公式のQt5.6.2にもQt5.6.2 gcc_64を指定した設定が適用されていました。
(自動検出のQt4を消すことが出来ました。)
ですので、102さんが仰る
>>Qt Creatorだけシステム側ので全体がチグハグ
にはなっていないと思います。
この報告をすぐにすればよかったですね

117 :
>>116
まあUbuntuなら公式とそれほど差があるわけじゃないから
動けばどっちでもいいだろうけどさ。

念のためにGUI上でQt Creatorのバージョンを確認して、
$ (QtSDKをインスコしたPATH)/Tools/QtCreator/bin/qtcreator -version
の出力と比べてご覧よ。

同じなら同じバージョン。
異なるならQt Creatorだけシステム側のを使ってる状態になる。

118 :
>>114
商用はOSSではないよ

119 :
>>118
https://www.sra.co.jp/qt/faq/licenses.html
問 :
 商用版の Qt にあって、オープンソース版の Qt にないものは何ですか。
答 :
 基本的な Qt のコードとライブラリと API は、両方で同じです。しかしながら、商用版とオープンソース版では多くの違いがあります。
 商用版の顧客は、オープンソース版のユーザが利用できない多くの製品やサービスを入手できます。

>>118,110 は明らかにQtのコードの話をしているからこれはOSSの範囲だ。

120 :
>>117
だめだコイツ
話が通じてねぇw

121 :
>>119
商用はQtのコードを変更しても知らせずに使える。OSSに反映する必要はない。
製品に特化した機能変更や修正をしてもよいしQtを使っていることを知らせる必要もない。

122 :
>>121
あー、こいつ全くわかっとらんわ。話にならん。

123 :
>>122
LICENSE AGREEMENTをよく読んでごらん。

124 :
>>123
117のカキコ見たらわかるが
人の話全く聞かない奴だからスルー推奨

125 :
数日前、Qt Creator4.2.2でオプション設定していたら固まった。
今日は、起動して7つのプロジェクトが入ったデフォルトセッションを開くとプロジェクトの読込中のまま進まない。

126 :
プロジェクト読み込み時に固まるってのはたまにあるね。
しばらく待ってたら読み込み終わることが多いけど。

userファイル消してみたらどうだい。

ついでにいうとここで書いたって解決しないから
どうしてもというなら公式のフォーラムで発言したほうがいいよ。

127 :
おまえらQtでmastodonのクライアント作ろうぜ

128 :
>>126
そうだね。
今度はビルドしたらQt CreatorのプロセスがCPU 100%で無限ループ。

129 :
Python3 + PyQt5 の勉強始めて、基本的な動作の実験をしてみたんだけど、

if __name__=="__main__":
  # 1回め
  app = QApplication(sys.argv)
  window = MainWindow()
  app.exec_()
  # 2回め
  app = QApplication(sys.argv) # これをしなければ OK
  window = MainWindow()
  app.exec_()

ってやると1回めのウィンドウを閉じたところで Segmentation fault になる。
MainWindow は、QMainWindow から派生してて、コンストラクタで show() してる。
2回めの QApplication のインスタンスを作りなおさなければ動くんですが、なぜなんでしょう?

想定しているのは、入力のフロントエンドとして使用して、その処理を繰り返すような用途です。

130 :
>>129
基本的にQApplicationはQtアプリ自身の寿命と同じになる。

QApplication::exec()から制御が戻ってきたときはそのままアプリケーションは終了させてしまう。

君が書いてるようなQApplicationのインスタンスを何度も作り直すようなことは想定されてない。
根本的に使い方が間違ってると思うんだが。

131 :
>>130
どうも。
まあ MainWindow を再生成してる例とかも見たことないし、
あまり良いことじゃないんだろうなーと思いながらちょっと実験をした次第。

スレッドを使うのが正しいんだろうとは思うんだけど、なかなか大変そうで、
できれば簡単に済ませられないかと。

1. ウィンドウで入力。
2. ウィンドウ閉じて、途中経過はターミナルにつらつらと出す。
3. 1 に戻る。

こんな感じなんだけど、簡単にできる方法ないでしょうかね。

132 :
そんなことだれもやらないだろうな
MainWindowの中身を造りなおせば済むから

133 :
メインウィンドウを閉じるという事は、アプリ・プロセスの終了と同じ

プロセスの起動・終了を繰り返しても、時間がかかるだけで、意味がない

134 :
>>131
どうしても閉じたいのなら、closeした時のsignalで処理開始して、処理終了signalでメインウインドウ再度作成すればいいんやないの?

135 :
pythonにもhide/showぐらいはありそうなもんだが

136 :
hideするだけで良いじゃん。
多分GUIアプリを作った事がないと見た。

137 :
>>131
app.setQuitOnLastWindowClosed(False)

138 :
どうも。いろいろ参考になります。

ちょっと気合入れてスレッド勉強しました。なんとなくわかってきたんで、これで実装しようかと思ってます。あー、頭いて。

>>136
Python + Qt は初めて。Lazarus なら遊びで使ったことがある。

>>137
なにやら怪しげなフラグ設定、調べてみます。

139 :
>>138
python で実装するにしても関数仕様は以下を参照した方が速い。どうやっても C の仕様に引き摺られるので。
http://doc.qt.io/

例えば >>137 を調べるとして、以下を見れば古い C 流儀のプロパティだと判って python 流でないのに戸惑うかもしれない。
http://doc.qt.io/qt-5/qguiapplication.html#quitOnLastWindowClosed-prop

ただ、>>131 をやろうと思ってるなら閉じる必要のあるウィンドウをメインウィンドウにするべきではないと思うな。入力用のダイアログ作ればいいと思うけど。
逆にずっと出していると思われるターミナルウィンドウみたいなのをメインにしたらいいと思う。
そうすると余程長い処理じゃなければスレッドを使う必要もなくなるんじゃない?
PyQt/PySide でスレッドを分けるとスレッドを跨いだデータの扱いで結構面倒事が起こる。

140 :
馬鹿には無理

141 :
質問です
QChartを使いたいんですけどQtCreatorのデザイナに出てこないんですがどうすればいいんでしょうか
環境はUbuntuでCreatorと全モジュール入りのソースをビルドしてインストールしました

142 :
質問。QMLでfindObjectByIdに相当するものって無い?
idをJavaScriptに文字列で渡ししたいんだが

143 :
>>141
chart使ったことはないが公式のサンプルはあるじゃろ
そこから読み解くのも一つの手

>>142
C++でも存在は知ってても使ったことがない
Qt3より以前の古い設計の名残だと思ってるが…

144 :
QStringListやQMap<int, QString>でよくね

145 :
なんでQt製の2ch専ブラが存在しないの?

146 :
Qtで作るメリットがないからじゃね?

147 :
Qt は Unix 系の人が多いと思うけど、 Unix 系の人はお気に入りのニュースリーダかエディタで 2ch を見る人が多い印象がある。

148 :
専ブラを作るのに適したGUIライブラリってなんだろ
Qtはマルチメディアも扱いやすいしWebKitも軽いし最も適した選択肢の1つに入る気がする
それともWPFやJavaFXのほうが良かったりするのかね

デスクトップ版の専ブラ古臭いのしかないしQt/Qmlでデスクトップ/Android両対応の専ブラ作れば一発当てられるんじゃね

149 :
ぜひ当ててくれ

150 :
ときすでにおすし

151 :
kitaってのあったよ
LinuxデスクトップやZaurusではそれなりに使えてたけど

152 :
2chのapiが独占されてるからいまさら考えても意味なし

153 :
現在の入力値を調べてボタンを有効/無効にする制御をやりたい。
Windows だとこういうのは Idle ハンドラでやってたんだけど、
Qt だとどこでやったらいいんでしょうか?

154 :
オブジェクト思考的な話
数値がある閾値超えた場合、その旨の signal を発行して、
その signal (イベント)が必要なオブジェクトがそれを拾えば良い話

もちろん、signal を使わず数値を監視して enable/disable への切替は可能だけど

もはやQtの話じゃない

155 :
うちではTimer使ってやってる

156 :
timerで処理ってダイアログ閉じるタイミングで変更されたりしたら嫌だな

157 :
QtCreaterのソースコードでキーボードカスタマイズを
実現してるUIがあるから参考になると思うよ

158 :
QtCreatorでカッコやクォーテーションを勝手に補完するの止める方法ある?
特に範囲選択して文字を打てば置換して欲しいのに、選択範囲を勝手に囲むの
マジで作業効率悪い

159 :
terか

160 :
>>158
オプションの補完にそれぞれオフにするチェックボックスがある。

161 :
オプション>テキストエディタ>Completionだな。
それからQt Creatorが正しい。

162 :
Qt Creator で QLabel の背景色はどうやって変えるんですか?
文字の色は palette いじったら変わったけど。
コードで変える方法はググったらあるけど、色見ながら変えたい。

163 :
あ、styleSheet でできました。

164 :
>>162
コードと同じで、トップレベルウィジェットでない場合にはautoFillBackgroundをtrueにするとpaletteの背景色が使われる。

165 :
末端のWidgetならstylesheetプロパティに直書きでいいけど、
QFrameとかのフレーム系Widgetにそれやると、中に入れた子Widgetが全部変わってしまうから注意な。

そういう場合どうするかというと、より上位のフレームのstylesheetプロパティに
クラス名付きで修飾を入れる。例えばQPushButtonについて変えたいなら

QPushButton {
border: none;
}

などとやる。

166 :
スレッドを requestInterruption() で中断させて、同じインスタンスをまた実行させると、
中断要求が残ってて即座に中断してしまう。requestInterruption() を受けたら exit() してしまって、
インスタンスは作りなおさないといけないの?

167 :
何やってるのかは知らないけど、大抵の場合は
QtConcurrent::Run+QFutureの組み合わせの方が扱いが楽よ。

途中終了とかもできるし。
まあ再開はできないから途中からやり直すという
コードを書く必要があるかもしれないが。

168 :
記念カキコ
idにQtが出たので...

169 :
どこどこ

170 :
idといえば、C++からQMLのidを指定して
任意の場所のvisible状態をC++側で取得する方法は?

171 :
http://qiita.com/amay077/items/38ee79b3e3e88cf751b9
Xamarin.Formsがmacにもlinuxにも対応するってマジ?

最近はLinux用アプリでさえQtよりElectronを目にするようなってきたし、いよいよQtもオワコンかなぁ

172 :
Javaのコーダーがあれだけ増えたのに、
デスクトップじゃいまだにVisualBasicの代替程度しかなれてないけどな

173 :
ElectronじゃC++使えないじゃん

174 :
デスクトップアプリは今後もQtを中心に使うけど、
スマフォ/タブレット用はXamarinにする予定でいる。

手元のアプリではだいたい44-47%は外部インターフェイスを持たないModel部の実装になるから、
これだけのボリュームがプラットフォーム非依存にできる利点は大きい。

175 :
非依存でもQtありきってのがなぁ

176 :
Qtなんてただの道具なんだから、
使いたくなければ使わなきゃええねんで。

Model部はpure C++でも構わんだろ。
生産性がいくらか下がるだけの話だ。

177 :
ほんそれ

178 :
Qt SDKのexamples/widgets/gestures をWindows10で動かしてるんだけど、
pinchは反応してるけどpanとswipeは反応しないね。

これってこんなものなの?

179 :
QMLについて調べてるんですが、.uiを使わずにこれを使う利点であるのでしょうか?
少し調べてみた限りでは面倒臭くなるだけに見えるで候

180 :
1回使ったら二度と使いたくなくなる

181 :
>>178
二本指してる?

182 :
Qt Creatorの、Debug実行を行っているのか、exeを起動しているのか、判定する方法かifdefはありますでしょうか?

183 :
>>181
公式Helpとサンプルの挙動を見る限り、pinchは2本以上の指でpanとswipeは1本指のように見えるんだが。
違うのかな。


>>182
qmakeのことを言ってるのかC++のことを言ってるのかで話は変わる。

184 :
>qmake
>C++

どちらの実現でも、OKです。
C++ってのは、VC++ですが。

知りたいのは、出来上がったExeの挙動をリリース/デバッグで切り替えることではなくて、
QtCreatorで動作するときだけはある処理をスルーしたい(逆もできればますます便利)です。

ある処理とは具体的には、throwで、exeのときにはQApplicationのオーバーライドでcatchして
エラーメッセージがちゃんと出せるのに、
QtCreatorで実行すると、throwでドカンとアセンブラステップ画面に移動して、アプリがEND。

185 :
>>184
Qtに限らず、C++上では
_DEBUG プリプロセッサシンボルの定義状態によって判定するのが基本。

qmakeではconfig関数を使う。デバッグビルドであることはわかるけど
リリースビルドであることはわからないので ! 演算子を併用するとかやや意味不明な運用になってるね。

例外の下りだけど、どうも184のコードがおかしいような気がする。
そもそもQtはQT_NO_EXCEPTIONSが定義されていると例外機構が存在しないものとして動作したりするし。
例えばQException以外が飛んで来ることが想定できてないんじゃね?

186 :
>>184-185
昔 java が流行った頃にその手の挙動であった一例として。もしかするとこういう書き方をしてるかもしれない。

java の throws のつもりで関数定義のところに throw(XException) を書いてあって
関数内で XException 以外の例外が発生するとそこでコアダンプするというのがあった。

java: XException を投げる可能性があるので上位で対処を要求する書き方
void test() throws XException {
}

C++: XException 以外は投げられず、std::unexpected() に制御が移る
void test() throw(XExpception) {
}

187 :
>>185

全然話が違っています。

デバッグコンパイルでも、リリースコンパイルでも、ただしくcatchできています。

ただ、QtCreatorで、throwのところで、デバッガーが止まるのが困ってるだけです。

前にも書いた通り、デバッグコンパイルのexe/リリースコンパイルのexe、を切り分けたいのでなく、

デバッガ―が止まらないように、でばっがーによる起動を判定したい、だけです。

188 :
>>187
184の文章ではcatchできているかできてないかの話に読めるし、
187の文章を見てもやはりcatchできなかったときのデバッガの挙動に見える。

自分の書いたコードとデバッガの挙動とが正しく把握できてないんじゃないかな。

実際のコードを単純化してgistとかに上げてみたらどうだい。

189 :
catchの話は無かったことにしてください。

起動がExeなのか、QtCreatorデバッガ―なのか、の判定がプログラム中で知りたいです。

190 :
>>189
実行するとき環境変数設定してgetenvしたらええんちゃうの

191 :
>実行するとき環境変数設定して

QtCreatorのデバッグのオプションで設定できるのでしょうか。

192 :
そろそろVisual Studio 2017に対応した?

193 :
しかし、ここまで全角半角、大文字小文字、ひらがなカタカナ、
はたまた、ハイフンと長音記号が入り乱れてる文章はなかなかお目にかからないな

会話の前後も一致しないし、もしこれで日本人なら、
そもそものコードもちょっと心配

194 :
変なのが着た。

195 :
>>191
実行の構成のところに環境変数設定がある。
ひだりの縦のバーのプロジェクト設定のところな。

196 :
誰かShogiGUIのQt版を作ってくれへんか
LinuxとMacでまともな将棋検討アプリがなくて困っとるんや

197 :
自分で作れば

198 :
無理(>_<)

199 :
最近お仕事で使い始めた
便利なTkだな
しかしフレームワークが膨大でオライリーの第1部読んでからはかいつまんで集めた情報でコード書いてる

200 :
Qtは情報がすぐに古くなるので、
・公式ヘルプ
・公式サンプル
・githubのQtプロジェクトまたはKDEのソースコード

に当たったほうがいいよ。

201 :
Qtの公式ドキュメントすごい読みやすいよな。
クラス説明のやつとか、概要一覧詳細一通り揃ってる。

202 :
KDEのソースの質ってどうなんです?

203 :
コードの良し悪し以前にKDEのライブラリ環境が前提の実装になってるから
純粋なQtプログラムとしては使いものにならない。

だが全体がQtの文法で書かれてるから書き方や使い方の参考にはなる。

204 :
Visual Studio 2017でQtを使う方法教えて!

205 :
qmake自体はVS2017を認識するから自力でビルド。

206 :
qmake vs cmake

207 :
ビルドする前にqmakeするだけだろ

208 :
qtはちょっとc++やりたい時にいいね。
最近のvisualstudioデカすぎて、ダイアログボックス出すプログラム書くだけでも何十ギガバイトもダウンロード&1日かけてインストールせなあかん

209 :
MinGW版は GNU configure系と相性が悪すぎてプロジェクト管理が死ぬ

210 :
>>208
wxもオヌヌメ

211 :
>>209
tdmgccいいお

212 :
>>211
いや、コンパイラの問題じゃなくてqmakeによるビルドシステムの問題だから。

qmakeでプロジェクトを管理すると、ファイルをコピーしたりasmをアセンブルしたりするみたいな当たり前のことが
基本機能じゃ扱えなくなって自動化するのが大変になる。

GNU configureの自動実行もできないっぽいから実行時に自動生成されるソースファイルとかを
元のソースツリーの外にコピーして別途管理したり涙ぐましい努力でプロジェクトを維持している。

213 :
qtcreatorからCMakeFile.txtを扱えたのか……。

手書きする部分はqmakeのままでいいけど、外部ライブラリをビルドしてるだけの部分は
cmakeで作ったほうが楽だったかもね。

214 :
>>208
何か作るたびにインストールしてんのかよ

215 :
qtでスキンメッシュアニメーションできないか定期的に調べるんだけど未だできなさそうかねぇ?

216 :
>>215
QGraphicsViewのサンプルにあったで

217 :
>>216
すまぬが見つからん
3dモデルが動いてるサンプルはいくつかあるけど、コード上で回転させたり伸縮させてるのしかないように見える。
3dモデルに内蔵されてるアニメーションデータを再生するってのがなくて、
それがないと人が歩く絵を表示できなくて困っとる

218 :
qt 3d studioがリリースされるまで待つしかなさそう

219 :
>>217
スキンメッシュアニメーションってのが3Dなんて誰が言ったんだ?

QGraphicsViewは2Dのフレームワークだ。で、そのサンプルがあるぞと指摘しただけなんだが。

220 :
お、おう
それじゃー3dモデルのアニメーションは
自分で書くか将来に期待するしかないねー

221 :
Qt製のMMD期待

222 :
割と最近めのqt creatorで
デバッグ開始するとデバッグ用のウィンドウが下の方とかに出てくるんだけど
デバッグ終了しても消せない
どこ押せば消える?ググってもぽちぽちしまくっても消えん!

223 :
それはね、左側のボタンをデバッグから編集に切り替えると消えるよ。

見た目ボタンにしか見えないんだけど、以前ソース見たらこれはタブとして実装されている。
visualstudiocodeでもほぼ同じデザインになってるし、最近のはやりなのかもねえ。

224 :
>>221
なんで?
メリットは?

225 :
定期的にv-playが気になるんだけど誰かがっつり試してみた人はおらんか

226 :
http://blog.qt.io/blog/2017/07/20/qt-creator-4-4-beta-released/

そろそろ
・1文字補完
・fuzzy補完
・引数と補完を同時に表示する
・補完中にdoxygen形式のコメントを表示する

ぐらいやってほしいんですけど。
VSCodeでもやってるというのに...

227 :
俺のVSCodeは全然言うこと聞いてくれないのでQt使ってなくてもQtCreator使うしかない

228 :
QtCreatorはそんな細かいこと以前に
msvcと組み合わせたときのデバッガの絶望的な重さをなんとかしてほしいわ。

229 :
最近流行りのzen mode欲しい
俺の頭がバカすぎてアレがないと読むのがつらい

230 :
>>229
耳栓してHMDで常に視界の中央にコードが追従し続ける究極のzen modeはどうでしょうか

231 :
>>229
そんなものが必要だとか考えたことすらなかったわ。
画像ビューアだと当たり前だけど、IDEだとゴテゴテ物が付いてる方がいいという風潮すらあるわな。

232 :
>>170
一般的にはidから特定できない

233 :
>>179
もっと調べて使ってみればQMLの.uiは役に立たないと分かる

234 :
>>222
ESC

235 :
>>225
がっかりだった

236 :
>>235
モバイルでQt/Qmlが使われるようになる日は来そうにないか

237 :
みんなQtで何作ってるの?
作りたいもの(特にGUIで)って次から次へと出てくる?

238 :
使えば使うほど使いたくなくなる

239 :
GUIとかいらなくね?って思いながら使ってる
そろそろ自分が納得できるGUIライブラリと作り始める頃合い

240 :
>>238
Qtのやり方でクロスプラットフォームは抜けだらけで嫌になる。
Qtはデスクトップとモバイルはもうダメ。
残るは組み込みだがそれもいつまで持つか。

241 :
tkは原始的すぎるし、GTK+は遅すぎるし、って考えると
Qtは相対的によく出来てるよ。wxは使ったことないから知らん。

Windowsでファイル拡張子関連付けやレジストリやらいじるプログラム作ったけど、
意外とQtだけでなんとかなるもんだ。いちいち用例やドキュメントが無いから
自力で調べ回って作らされる羽目になるが。

タイトルバーやシステムボタンをQtはほとんど制御してないことをつい先日理解した。

242 :
ここ数ヶ月?ネガキャン頑張ってるよね

QMLの悪いところを使って、あたかもC++版が悪いように表現したり、
逆にC++で問題ないデスクトップ版をQML使って陥れようとしてるし

243 :
どこのこと?

244 :
デスクトップはC++はダメで、QMLはどうしようもなくダメ。
モバイルはC++はどうしようもなくダメで、QMLはまったくよくなる見込みもない。

245 :
QtはダメでFA?

246 :
意味がわからん。
QMLが気に入らないなら使わなきゃいいんだし、
そうしたところでQtの価値が下がるわけでもない。

ってこういうツッコミはもう以前入れたと思うんだが。

同じことを2回言わなきゃいけないってそれだけ頭が固い証拠じゃね?

247 :
MFCやらVCL使ってきた身としては英語ドキュメントしか無いにも関わらずQtのライブラリは本当にわかりやすい

248 :
ライブラリなんか常に文句言いながら使うもんだろ

249 :
Qtはjavafx以下のゴミ

250 :
>>247
それってオンラインドキュメントとしての話?
VSはオンラインドキュメント化してからゴミ以下になったが
とりあえず2008以前までのオフラインドキュメントは良かった

なんにせよQtのドキュメントがわかりやすいという感覚は理解できん

251 :
MSDNと比べる前提で言えば、Qtのヘルプは各APIの説明が全然足らんわ。
各引数と戻り値の説明がない。

ソースコード読んだほうが早いくらい。

252 :
>>249

253 :
>>251
Qtのマニュアルはかなりわかりやすいと思うが。
英語がある程度分かること前提だけど。

254 :
英語云々ではなく説明不足
MSなら事細かに説明が書かれてるうえに
サンプルコードがほぼ記載されてる

255 :
あのドキュメントで分からないなら
qt以前にプログラミングの経験が足りないんじゃないの?

256 :
MSも大して書かれていないし、サンプルコードも冗長過ぎたりしてない方が良かったりする。
まあこれ以上は宗教戦争になるな。

257 :
>>253 >>255
それな

258 :
例えばQtでWindowsのレジストリを読み書きするときは

QSettingsにQSettings::Registry64FormatやQSettings::Registry32Formatを設定して初期化したうえで
beginGroup()〜endGroup() を多重に呼び出して潜っていくんだが、
そんなのマニュアルのどこにも書かれてない。

http://doc.qt.io/qt-5/qsettings.html#beginGroup

マニュアルだけで使い方理解できたらエスパーだな。
例は他にもいくらでも挙げられるぞ。

259 :
>>255-256
分かる分からないではなく度を超えて説明不足
MS系使ったこと無いんだな

260 :
qtはwinでしか動かない訳じゃないんだから
環境依存する部分のドキュメントは汎用的になるのは当たり前でしょ

261 :
Qtの資料が説明不足という例は出した。
反論できないならそれまでのことだ。

262 :
何から何までマニュアル例示してもらわないと何もできないって
自信満々に言われてもな
コピペプログラマかよ

263 :
学習の初期段階は例があればあるほどいいに決まってるだろうに

264 :
SDK自体のソースコード読んで初めて分かるようなマニュアルなんて意味ないだろ。
常識で考えればわかることなんだが。

265 :
まあ昔のMSDN引き合いにするのが間違いだったよな

当時はデザパタといったテンプレート的な設計なんて浸透してなかったから、
利用者の事前知識ゼロが前提で説明も細かくなる

今はその辺理解してる前提のドキュメントが普通で、
だからこそ今のMSのドキュメントはしょぼいんだろ

266 :
QtCreatorに限ってだが、普通にサンプルやチュートリアルが大量にあるので、学習にはもってこいだよ。
Visual Studioをインストールしてもサンプルコードなんて無いだろうに。
ただQtの場合はc++を熟知していないと使いにくい事は確かにある。

267 :
俺がやりたかったことのサンプルプログラムはQtには無かったな

268 :
バージョンアップで仕様変更されてもドキュメントに記載なし
結局ソースコード読んで調べたわ

269 :
>>246
気に入らないのではなくてダメだから価値がない

270 :
質問です。

画像ファイルの読み込みをstatic関数化したうえで
QtConcurrent::run()で複数スレッドで並列実行してるんですが、
run()に渡したstatic関数が複数回呼び出される不具合に悩んでいます。

run()を呼び出す直前(呼び出し側スレッド)でqDebug()出力した内容は各ファイル1個ずつなのに、
static関数内部はそれぞれ2回以上呼ばれてしまう感じです。

その後、関係ないときにも何度も呼び出されているような挙動をしています。
QFutureのインスタンスの扱いに何かポイントがあるのでしょうか。

この辺の挙動についてご存じの方、コメントください

271 :
>>265
勝手に普通を定義すんなよ
MSは複数の言語のヘルプがごちゃ混ぜになってしまって
期待するものと違うものがヒットしやすいけど
検索がバカになっただけで内容の細かさはピカイチだわ

272 :
Qtのはヘルプってより一覧レベル
一般的なヘルプは「これ使えそう」
Qtのヘルプは「名前や概要説明はそれっぽいけど使ってみなきゃわかんねえ」

273 :
>>270
君の書いたコードが間違っている

274 :
みなさんGUIが絡んでいないlibの部分でもsignal/slotガンガン使ってますか?

275 :
もちろんです

276 :
signal/slotを編集管理できるwizard系機能はQtCreatorには無いの?
面倒臭くてかなわないんだけど

277 :
>>274
serialportの非同期通信とかすごく楽に書けるやん

278 :
>>276
今ちょうどそういうツールをnode.jsで作っている。
正確にはactionとアプリケーション設定値の設定表とソースコードの自動同期ツールだけど。

279 :
Qt Creatorを2つ起動していると頻繁に
ビルドメニューが死ぬ。

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

めんどくさい。

280 :
>>278
いいな、俺はQMLのプロパティ管理ツールでも作ろうかな

281 :
v2cつらいし誰かkitaをqt5に書き直してくれへんか

282 :
JDのほうを頼む

283 :
windeployqtを実行したら用意してくれる translations/qt_XX.qmが、
実は置いただけじゃ自動で読み込まれないことに気付いた。

コード書いてやる必要あるってことかな。

284 :
QtCreatorのclangbackendほんと頑張ってるなぁ
独立プロジェクトにしてlanguage server protocolに対応とかしてほしいけどQt使ってるからあんま歓迎されないのかな

285 :
clangbackendって何?

286 :
>>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)協力し合って欲しかったです
まったく同じものを作ろうとしてるのに...

287 :
合体してほしいね

288 :
あと3秒

289 :
QML始めたけど慣れなさすぎて辛い
ドキュメント睨んで目がチカチカしてる

290 :
Qbs使ってる人ー?

291 :
QtもJavaFXも良く出来ている!しかし、俺はGtk+が好きでGtk+のスレがないから
言わせてくれ!Gtk+もQtQuickやJavaFXみたいなリッチクライアント&簡単なスクリプト作ってくれ・・!

292 :
GTK+ってバージョン2時代の激オソ、クソ設計の頃しか知らないんだけど、
最近はマシになったのかな?

293 :
GTK+はどうみても糞

294 :
GTK+はqmakeいらないのが長所

295 :
gtkもqtもcmakeでおk
CLionみたいなIDEもあるし

296 :
qmakeでも意外と色々できるんだが、
設計外のことをやらせようとするととたんに大変になるんだよな。
例えばasmをアセンブルする構文がないから
いちいちカスタムコンパイラ定義して外部コマンドとしてアセンブラを実行する必要がある。

297 :
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)

298 :
qmakeの再実行

299 :
>>298
ありがとうございます。解決しました!

300 :
○次受けが多いほど退場率が早くなる。高くなる

直受けの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) クラウドテック プログラマーズ

301 :
Qt4.8.4でQMLを使い始めたのですが、QtChartsやGo言語を使わずに
LineGraphを作成するにはどのようにしたらいいのでしょうか?

302 :
なんでわざわざそんな古いバージョン使うんだよ。

303 :
ボタンが押されたら新しいダイアログを生成するという処理をしたいのですが…
新しいuiファイルを作成して、それ専用のクラスを作る流れになると思うのですが、
#include "ui_(uiファイル名).h"
としてもビルドできません
一度手動でuicをいじってヘッダを生成しなくてはならないのでしょうか?

また、qt 5.7でwebkitを使いたいのですが、proファイルにQT+=webkitwidgetsと書いてもエラーになります
環境はUbuntuで、sudo apt-get install libqt5webkit5-devも試しましたが出来ませんでした
どうしてでしょうか?

304 :
>>303
uiファイルで指定したクラス名のQDialog継承クラスを定義してあげないと
uiファイルはC++ソース上で使われない。

そのへんは口で説明するよりQtSDK付属のサンプルソースを読んだほうが早い。
ちゃんと読んでから質問しようね。

305 :
>>304
ありがとうございます
帰ったら目を通してみようと思います…

306 :
>>303
Qt Creatorを使って、ファイルの新規作成から
Qt Designer フォームクラス を作れば自動でcpp,h,uiが作られるよ
...Quickのほうはよく分からんけど...

307 :
>>306
なるほど!
そっちでやれば良いんですね…
uiフォームだけ作る方でやってました

308 :
Gtkuickも作ってください(><;)

309 :
そういえば一時期削除されたgtkテーマのサポートが復活したようで嬉しいです

310 :
>303です
デザイナでQWebEngineViewを使いたい場合、QWidgetを配置して格上げすると思うのですが、
ヘッダにQWebEngineViewを指定してグローバルにインクルードするを選ぶと「既にクラスが存在します」と出て格上げできません
自分でQWebEngineViewを継承したクラスを定義しなくてはならないんですか?

311 :
だからサンプルコードを見なよ。
話がループしてるんだが。

312 :
>>309
Ubuntuのデスクトップ環境もUnityからGNOME(Gtk)になるねw

313 :
Linuxは今自分が動いている環境がGNOMEなのか
KDEなのかを検出する方法がわからなくて嫌になる。
QtはGNOME環境じゃまともに動かない。

314 :
>>311
サンプルからヒントを掴みQWebEngineViewのウィジェットを表示させることには成功しましたが、そこら辺のサンプルは敷居が高く理解できません…
これから読めば理解が進む、というようなものがあれば教えて頂ければ幸いです

315 :
目的のウィジェットが使われてるサンプルを一通りビルドして動かして、
自分の目的に一番近い使われ方をしてるサンプルを改造することから始めたらいいんだよ。

いじって元のコードがわからなくなるのが嫌な場合は
サンプルコードごと別のフォルダにコピーすること。

316 :
>>315
なるほど!
そういう使い方も出来るんですね
やってみます

317 :
マンマン、キュッキュッ!

318 :
シコシコ、シュッシュッ!

319 :
くちゅくちゅ どばどば

320 :
マジでこの先Qt製の2ch専ブラなんて登場しないのかな...
v2cもjdもいい加減つらいわ...

321 :
ないの?

322 :
ウィンドウの左端にボタン画像を並べてタブのように切り替えられるコントロールって何かない?
QTabBarのタブに画像を貼るとある程度近くなるんだけど見た目のイメージが違う。

323 :
ある

324 :
なに? おしえてー

325 :
ダイアログだかウィザード系でそんなのあったね
QtCreatorのサンプル一覧でもあったんじゃね

326 :
QtのサンプルをQtCreatorで眺めてたが、少なくともサンプルのサムネイルでは見当たらないな。
それからWizardと名のつくサンプルはないようだ。

327 :
>>323
この適当な返答するおっさん前にも湧いてたな

328 :
>>327
お前モナー

329 :
QtCreatorそのものがそういうレイアウトじゃろ

330 :
QtCreatorのはFancyTabWidgetっていうんだけど、
QtCreatorのコアライブラリと密接に結びついてて単独で扱えない。
芋づる式に20個ぐらいソースファイルの移植が必要になる上に、そのままでは動かんようだ。

331 :
qt専用のパッケージマネージャqpmってどうです?

332 :
http://lists.qt-project.org/pipermail/interest/2011-November/000217.html
レス付いてないな

http://www.qtcentre.org/archive/index.php/t-46477.html
ソース嫁か

333 :
qtをc++14以降でリライトしてくれ😫

334 :
>>332
質問の場が悪いんじゃね
Qt Forumのgeneralとかいう所で聞いたら早いし優しい

335 :
QMLってもしかしてスクロール関係が全体的に弱い?

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

スクリプト言語によくあるような、QMLを予めコンパイルして
描画時スクリプト解析みたいのを無くす方法あればいいんだけど

336 :
QMLのスクリプト解析描画が重いのって
ColumnやRowのリピート描画でも言えるな
標準のプログレスバーがダサいからリピートで書いたら
重すぎて高速の更新にまるで使えん

337 :
QML側でどうなってるか知らないが、
ListWidgetやTreeWidgetはC++実装でも重い物だから、
数百項目以上になるなら普通はListViewやTreeViewを使う。
こいつはデータモデルを別途構築して、
Viewクラスがそれをなめて自分で描画するという手順を取る。

338 :
Qt World Summit 2017のモバイルアプリどっちも十分出来がいいように思えるな
http://blog.qt.io/blog/2017/09/29/qt-world-summit-app-2017-open-source-live-now

まあモバイルでQt/Qmlが使われるようになる日はこないだろうけど
ライセンスも酷いしな

339 :
QtはLGPL/GPLの制限がある限りモバイルでは使いものにならないので、
Golangあたりで再実装して、ライセンスもスタティックリンク可能なものにするしか生き残る方法はないと思う。

340 :
xamarinがWPF/macOS/Gtk#にも対応するっぽいしマジで最初からc#学んでおくべきだったかな
最近はクロスプラットフォームなアプリといえばまずElectronでQtなんて早々お目にかかれないし、どんどんjsとc#に吸収されていきそう

Qtにうつつを抜かしてたせいでMVVMにもすっかり乗り遅れちゃったしなぁ

341 :
うつうつします

342 :
しかしxamarinの発想は、Qtみたいに同じソースコードでどのプラットフォームにも
同じUIを提供するというものではないからな。

プラットフォームごとにUIは作り直しになる。
しかもC# がネイティブになってる処理系はないから
ツールキットAPIの脳内翻訳が必要になる。

343 :
>>342
つXamarin.Forms

344 :
>>337
すまん間違えた、重いのはListBoxじゃなくてListView
もちろんQAbstractListModelを使ってる
DelegateもRectangleとTextだけのシンプルなもの
この重さ、いったい何を想定して作られたんだ?
軽くする方法あるのか?

beginInsertRow-end、beginRemoveRow-endみたいな仕様も
正直めっちゃ使いにくいし、全更新の関数は落ちるし
スクロールバーの位置の保持とかどうすりゃいいねん

345 :
>>343
スレ違いだからスルーする
>>344
C++で実装すると、15000件登録しても描画は0.1秒未満だよ。
もっとも、画面描画で必要な件数しかアクセスされないから、
画面外の件数は描画速度には直接関係ないが。

346 :
>>345
描画をQMLにやらせずC++でってこと?
それができるなら是非それにしたいな、サンプルとかどこかにあるかな?

細かいスクロールの位置保持や復元の方法はわからないけど
指定の行までスクロールさせる命令がQMLにあるでしょ
頭の方の行だったらいいけど、ケツの方の行を指定すると
数秒間フリーズしたみたいになる
その間は表示してないからわからないけど、もしかして
指定行までスムーズにスクロールしててあんなに遅いのか?

347 :
>>346
QtSDKのソースコードに含まれてるサンプルの中に
QAbstractItemModel/QStandardItemModelそれぞれのサンプルコードがあるよ。

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

個人的にはQMLはRAD開発やユーザー拡張用で、
本格的なアプリを作るなら普通にC++で作ったほうが速度出るしつぶしが利くと思う。

348 :
>>347
Qt使えとかQML使えというのは上の絶対命令でね
初動からおかしいうえに方向転換できない末期に放り込まれたから

とにかくありがとう、めちゃめちゃ参考になった
表示して選択してだけだから、まさに後者かもしれない、早速調べてみるよ

349 :
FlickableとColumnとRepeaterでテストした限り100件でスクロールが重いってことはない感じ

350 :
上の命令なら、商用版でQt Quick Compilerが使えるんじゃない?
まあ、それでもC++ネイティブには負けるけど。

351 :
>>344
昔試したけどそこまで重かった記憶ないな。Qtのバージョンは?

352 :
>>349
今時の速いのが当たり前のスペックだけでテストしてたら商品にならないでしょ
>>351
5

353 :
qtのsignal&slotパラダイムってgoto文みたいだよな

354 :
>>353
どの辺が?

355 :
むしろObjective-CのメッセージやC#のeventに近い。

356 :
たかがGUIツールキットで独自のコンテナやらスマポやら作りやがって
まともなC++のGUIが欲しい

357 :
欲しいと思ったときがチャンスだぞ
というかWindows FormsのC++コピーみたいなのは無いんだろうか
デザイナツール付きで

358 :
QtはSTLやboostよりずっと昔から使われてるから自前で一通り持ってるんだよ。
だいたいSTLはコンパイラごとに方言があるしな。

359 :
https://www.youtube.com/watch?v=YWiAUUblD34
CppConのQtプレゼンだけやたら低評価多いな
他に比べて高評価も少ない

Qtはみんなに嫌われてるんだよね

360 :
wxWidgetsと比べたらどうなんだろ?

361 :
https://trends.google.co.jp/trends/explore?q=qt,wxWidgets

362 :
どうみてもwxWidgetsの圧勝です

363 :
本当にありがとうございました

364 :
gtkmmはgtk4でc++17をフル活用出来るようになるのかな

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

まあgtkはlinux以外での動作が期待出来んしqtは捨てられないけど
でもgtkmmはまともなc++で羨ましいというか健全だ

365 :
gtkは糞

366 :
gtkmmはAPIはいいけど、本体の gtk がねぇ...

367 :
c++どころかプログラミングをあまり知らない人がいきなりqtやるのっておすすめできる?

368 :
PyQt/PySideでPythonから使ったほうがいいかもしれない。

369 :
http://img.2ch.sc/ico/2iyou_2.gif
wxWidgetをPerlから入るのはどうですか?
資料少ないですかね

370 :
http://img.2ch.sc/ico/2iyou_2.gif
Beが…

371 :
cmakeとqmakeどっち使うべき?
出来ればcmakeでやりたいんですが困ることあります?

372 :
omake

373 :
うちはqmakeで統一してるけど、
Qt CreatorはCMakeのプロジェクトにも対応してるようだ。
ただしqmakeと違って直接読めないのでプロジェクト設定の変更に対応させるのが一手間増えると読んだ。

qmakeは一通りのことだとマルチ環境に対応できるが
ちょっと凝ったことをやり始めるとVisualStudioとかには対応できなくなる。

374 :
めっちゃかっこいい
https://www.youtube.com/watch?v=wZ3vNVggNbQ

375 :
そろそろmoc使わなくてもよくなった?

376 :
mocってやっぱいずれ廃止される運命なの?
https://youtu.be/YWiAUUblD34?t=1h10m20s

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

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

qt6はメジャーアップデートになるみたいだけどqt4並に互換性なくすとしたらリスクデカすぎるよねぇ

377 :
C++の仕様に縛られすぎてるのがいくない

378 :
そもそもC++の規格がここ10年くらいで急速に進歩しただけでな。
Qtはそれ以前からあるんだからしょうがないだろう。
過去の蓄積でできてるんだから。

379 :
qt6で過去を断ち切ろう!

380 :
もうQtWSの時期なのか

381 :
>>376
古いC++を見捨てるときになくなる
デスクトップは儲からない、モバイルは使い物にならない、
残るは組み込みしかない、つまらない

382 :
Q++

383 :
nvidiaのgraphics debuggerってQt製?

https://youtu.be/3D1QVspMF8w?t=13m34s
ドックウィジェットをドラッグするときVisual StudioでいうGuide diamondが表示されてるけどQtでもああいう挙動は実現出来るの?
そういうライブラリってある?

384 :
QtCreatorの挙動で一番戸惑うのが
ドッキングウィンドウの挙動。

まあ慣れたけどさ。

385 :
http://blog.qt.io/blog/2017/10/06/qt-5-9-2-released/
5.9.1から300近くのバグ修正(多過ぎ)、1000以上の変更(変え過ぎ)。
未解決バグ(機能不足は含まない)は五千以上。

386 :
http://www.dockspawn.com/demos/ide/dock_spawn_demo_ide.html
これをQtでやりたい

387 :
できるんじゃね

388 :
>>386
ウィジェットのドックなら簡単にできる。
QMLではできない。

389 :
そろそろカラー絵文字はよ

390 :
>>389
絵文字とカラー絵文字はやっと最近表示はできる。文字が重なって使い物にならない。

391 :
devicePixelRatioの扱いがようわからん。
1.0以外の表示ができる環境がない。

392 :
>>391
VMでUbuntuのUnityかGNOMEを動かせば試せる。
設定はLinux HighDPIで検索すれば見つかる。倍に設定すれば2が返る。
古いUbuntuはHighDPI対応していないので最新のを。

393 :
>>392
どもども。Ubuntu-16.04.2 のunityでunity-control-centerを使って
メニューとタイトルバーの拡大縮小を1.5に設定してみた。

タイトルバーとメニューのテキストが文字通り1.5倍になるが、
自作アプリで表示してるアイコンや画像のDPIはそのままだ。

アイコンの表示サイズを変更する機能は自前で用意してるので
このフラグをオンにすれば問題なく使えそうだ。

一番懸念していた画像のリサイズの品質はVirtualBox上では問題なく動いてるように見える。
あくまでエミュレーター上の話だが。

394 :
qt製の2ch専ブラ真面目に欲しい😢
PCでも絵文字を使いたいんだ😭

395 :
作って♥

396 :
>>394
10年以上前からその話聴くけど無いってことは需要無だろ

397 :
古参ならkitaというKDE用のQt3製の専ブラがあるで(http://kita.osdn.jp/)
最近でも作ろうとした人はいたみたいだし

Qtによる2chブラウザ MonaCute
https://anago.2ch.sc/test/read.cgi/software/1364969160/
専ブラのまがい物みたいなの作ってる
http://askmona.org/3396

でも皆失敗してしまったんだ
もうここの住人しか希望が残ってないんだ😵

398 :
あ、2番目のやつはAskMonaというサイト用の専ブラか😅

399 :
デスクトップでも2chmateが最強か
情けない😢

2chMate 0.8.9.52/chromium/App Runtime for Chrome Dev/5.0/GR

400 :
>>396
どんなしょぼい2ちゃんブラウザでも期待はされるから需要はある

401 :
登録制でみんなやる気無くしたからしゃーない

402 :
失敗した原因はなに?

403 :
qt3dstudioが一応オンラインインストーラからインストールできるようになっているよ
βだけど

404 :
誰かmmdみたいなの作るかね

405 :
AtlassianのHipchatのwindowsアプリQtで作られているらしいんだけど、
日本語入力時にバックスペースで文字消すとき
二回押さないと文字が消えなかったり
確定した文字まで多めに消したりとかなり使いにくい

これってQtのせいなのかな?

MinGW使うのやめてVisualStudioでコンパイルすると治るという書き込みも見たけど
Qtで日本語扱うならMinGWよりVisualStudioがオススメですか?

バグレポート
https://jira.atlassian.com/browse/HCPUB-268

Hipchat ダウンロード
https://www.hipchat.com/downloads

406 :
qtはlinuxで使うものです

407 :
mingwのせいにすんな

408 :
日頃からVisualStudio版とmingw版は並行して扱ってるけど、
QtSDK自体のTextEditでそんな不具合見たことないな。

409 :
https://sites.google.com/site/cguanlian/qt-creator-guan-lian#TOC-QtCreator-Ui-2015-

410 :
今時UTF-8以外の文字コードでソースコード書くやつなんておらんやろ。

411 :
つい最近、visual studio codeのvimプラグインで、そんな現象に出会ったなぁ。
日本語編集時に意図しない文字が消えたりするやつ。

412 :
日本語バグ多すぎ。

413 :
ちなみにQtにzipファイル展開させると、日本語を含んだファイル名が化ける場合があるからな

わざわざパッチまで用意して報告したのに、
動作確認コードを別途用意しろなんて舐めたことを言い出したので放置したが。

414 :
>>413
原因は何だったのでしょう? iconv の自動判定ミスかな。

415 :
zipのヘッダはある程度の柔軟性があって、内部に格納するファイル名のエンコード方法を指定するフラグがある。
つまりMBCSとUTF-8の2パターンでどちらかが使われるわけだ。

当然zipのヘッダを読んでどちらでエンコードされているか確認しながら処理しないといけないわけだが、
QtのQZipReaderは一部がMBCSでハードコーディングされているところがある。
するとUTF-8で格納されてるzipは正常に読めない。

まあそもそもDeflate64に対応してないんだから、本格的な対応とはいえないけどね。

416 :
>>415
詳しい解説ありがとう、そういう内容か。ASCII文字通り扱う分にはどっちでも支障ないし、マルチバイトのテストなんかロクにやってないんだろうね。

417 :
それじゃあマルチバイトで問題多発するのも当然だね。

418 :
それとは話は別だと思うぞ。
QStringは常にUTF-16で文字列を保持してるから、
サロゲート問題を除き、正しく扱えば文字化けすることはない。

つまり、OSのAPIなど外部APIとやり取りするときは常にそれらのAPIが
何の文字コードで文字列を必要としているかを確認し、
toLatin1()
toStdWString()
toUtf8()
などを適宜使い分けてそれぞれの部分で正しい文字コードを指定してあげないといけない。

419 :
Qtがフォントの中にグリフが入っているかどうかを判定するのを間違って
入っているのに入っていないと判定して文字化けしたのは何度もあった

420 :
>>415
それzipの問題じゃなくてwindowsの問題だろ

421 :
>>420
違うよ。
説明のわかりやすさのために敢えてMBCSと表現してるけど、
これは純粋にzipの仕様とQZipReaderの実装の問題だよ。
OSに関係なくこの問題は発生する。

422 :
Win上でUTF-8のファイル名で展開されても困る気がする

423 :
気がするのか。
わしは困る!と断言できる者はおらぬのか。

424 :
>.>422
全然違う。
zipに格納されているファイル名を何の文字コードとして管理し、
QStringの文字列として取り出すかどうかという話。
動作するOSのファイルシステム上のファイルの文字コードとは全く関係ない。

とんちんかんな発言ばかりする前に、ちっとは実際のソースコードを読んだらどうだ?

425 :
何でソースなんか読まないかんのよと言いたいところだが。
Qtはソース読まないと使いものにならんもんな。

426 :
むしろなんでソースコードを読まないのか。

『プログラムは思った通りに動かない。書いたとおりに動く』
の原則のとおり、公式マニュアルで不明な部分やマニュアル通りに動いてない部分があったら
ソースコードに実際に当たるべきだ。

これはQtに限らずあらゆるOSSのプロダクトに共通の態度だと思うけどな。
それに、むしろQtのソースは読みやすい部類だ。

7zとか読んだらじんましんが出そうだぞ。

427 :
それLinuxユーザーの言うUNIXの精神だよね。
ソースが仕様って。
ところが一般的には仕様と違えればソースを修正する。
ソースに合わせて仕様の方を変更することはない。

428 :
仕様と実装の齟齬なんて話は全くしてないんだがな。
マニュアル通りに動いてなければソースコードも疑えと言ってるだけなんだが。

話がとんちんかんすぎて、
レス書いてるのが馬鹿らしくなってきたんだが。

429 :
元々丁寧に説明してくれているけど、まとめると、
・zipファイルにはUTF-8でファイル名を格納する仕様があるが、QtZipReaderはその仕様に対応していない。
・ゆえにQtZipReaderでUTF-8でファイル名が格納されたZipファイルを展開しようとすると、QtZipReaderで読み込んだ時点でファイル名が文字化けする。
・また、Zipファイルの解析はQtZipReaderが行うので、OSの機能は関係しない。
って、これだけのことだろー。

430 :
QtZipReaderの仕様がどうだか知らんけど、
仕様でUTF-8でファイル名が格納されたZipファイル名に対応していることになっているなら、実装のバグ。
仕様でそのようなZipファイルに対応していないなら、仕様が古い。⇒対応するよう、仕様と実装を更新。

431 :
だね。
より正確にはUTF-8形式でファイル名が格納されたzipファイルを読み込むと、
ファイルリストは正確に列挙されるが、それが入ったQStringListにあるファイル名で展開しようとすると
なぜかファイルのマッチングに失敗して何も展開されないという挙動をする。
その原因が上に書いたもの。

そして話は >413 に戻る。

432 :
ユーザー名・ファイル名などのシステムには、半角英数字だけを使うこと

日本語などで、テストしている開発者は、世界に1人もいない

433 :
1人もいなかったら見つかってないわけで

434 :
ちなみに、LinuxやMac環境だと更に悲惨なことになるぞ。
UTF-8で格納されてないと、ファイル名の文字コードが不明だから
どうやってQStringに読みだしたらいいのかわからん。

マルチリンガル対応のアプリだとSJISと決め打ちするわけにも行かないし。

435 :
ZIPのEFS対応は未だにMacでも怪しいから、Qtだけの問題でもないんだけどね。欧米圏では問題ないからやる気ないんだろう

436 :
rubyのときも同じこと言ってる香具師がいたわ

437 :
>>431-432
日本語をサンプルにするから要求が通らないんだよ
クリル文字をサンプルにしとけばすんなり通ったかも知れないぜ

438 :
>>437
ラベルやテキストエディットで濁点と半濁点がついた文字が2文字に分かれて描画されてしまうバグの優先順位が低いので
ドイツ語のウムラウトやフランス語のセデューユが2文字になるのと同じことだと説明したら優先順位が上がってすぐになおったことがある

439 :
別にQtに限らず
フリーソフトで日本語まともに表示できないのはよくあるだろw

文句が有ったら使うなよ!

440 :
>>439
Qtは商用版

441 :
此処はサポート窓口なのかぁ

442 :
>>431
明らかなバグなんだから、
問題があるzipファイルを報告すれば取り込むでしょ。
もうひと押しお願いします。

それにしても、QZipReaderってヘルプに載ってないのね...

443 :
>>442
求められたのは不具合が発生するzipファイルでなく、バグを再現するテストコード。
そこまでやってやる義理はない。

QZipReaderはプライベートなクラスだから、使うときはqmake側に
QT += core-private

などと書いてあげないといけない。

444 :
>>443
丸投げなのね...

ありがとう、使い方はわかりました。

445 :
QMLコンパイラ、有償版じゃないと使えないの?

446 :
>>445
そうだよ。

>>444
443はパッチまで作って送ってる。

447 :
パッチ送るだけなら楽だけど
取り入れて良いか確認する方は手間掛かるよ

448 :
>>446
QMLコンパイラは、お試しもできないのか
QMLは重い、使いにくいもんだという経験上の概念が定着してしまってるから
試すこともできないものはリスクでしかない

449 :
パッチを受け取って対応しないとか甘えでしかない。

450 :
>>448
商用版に付いてくる Qt Quick Compiler の原型(?)は github からダウンロードできるみたい。
使ったことないからどこまで使い物になるかはわからないけど。
https://github.com/qmlc/qmlc

>QMLは重い、使いにくいもんだという経験上の概念が定着してしまってるから
元々 JavaScript みたいなもんだから Widget に比べて重いのは仕方ないけど、rapid programming には結構便利だと思うよ。

451 :
Qtに必要なのは、QMLよりもXAMLだと思う。
MVVMの普及が必要だ。

452 :
Qtに必要なのはC#😉

453 :
>>450
githubのは商用版に対抗して作られたもの制約や問題が多い

454 :
>>403
cppとhが99%以上
qmlは1%未満
こういうものを作るにはC++

455 :
Archのpacmanで入れたQtCreatorがHelpでフォントのサイズの変更が出来ない...
誰か解決策知りませんか

456 :
普通はCtrl+ホイールだけどな

457 :
>>456
それが出来ないんですよ...

458 :
拡大 Ctrl++
縮小 Ctrl+-
リセット Ctrl+0

459 :
Menu->Options->Helpからフォントを指定しても、サイズを変更しても適用されないんですよ
そこにスタイルシートが指定されてない場合しか適用されないみたいなこと書いてあった気がするんですけど(うる覚え)それが原因ですかね?
どうすればいいのだろう...

460 :
>>458
あ、これなら出来ましたm(_ _)m

461 :
>>448
QMLコンパイラ商用版限定、LGPL3への切り替え、GPL限定、
どれもオープンソースなど考えずに儲けたいだけ

462 :
QML目当ての売り上げってどの程度あるん?

463 :
ドキュメントからはconnectでコンパイルエラーにはならないはずなので
ヘッダーを見たらドキュメントに書かれていないオーバーロードsignalがあるじゃないか

464 :
Creatorでコード編集中にマクロが未定義になってダイアログで警告されるのにうんざりだ。
起動しなおせば使えるようになるからバグ。

465 :
ubuntuで、QTCreato4.3を使用しています
VisualStudioのように、スタックサイズの拡張はできますでしょうか?

466 :
そろそろツールチップに型とかを表示するようにしてほしい

467 :
リファクタリングのシンボル名変更をしようとするとCPUが100%になって操作できなくなる

468 :
ボロボロですね〜

469 :
>>465
遅レスだけど、そういうのはQtの仕事じゃない。
リンカにオプションを与える。

具体的には

QMAKE_LFLAGS += オプション

ってproject.pro に書き加える。

470 :
Qtのダウンロードページ死んでるがな・・・

今、Qt5.9.1で、QWebEngineHistoryとかインクルードしたくて、
MSVC2017だと、QT += webenginewidgetsを追加しているのに、インクルードできないといわれてしまうし
MinGWだと、QT += webenginewidgets追加すると、Unknown moduleといわれるし

全くどうしたらいいだ

471 :
>>469
回答ありがとうございます。
具体的には、下記のような形でしょうか?

QMAKE_LFLAGS += -z stacksize 1024000

472 :
>>470
WebEngineはMSVC2017とMigGW非サポート

473 :
>>472
マジかよ・・・サンクス
つまりMSVC2013とかでやる必要があるということだな

474 :
>>471
試せばわかるやん?
>>473
msvc2015だろjk

475 :
Creatorのヘルプで戻ったときに>が有効にならずに無効になってしまうのがあるのは面倒だ

476 :
VSみたいに、複数プロジェクトをまとめるプロジェクトって作れないのかな?
.pro開いてビルドを取り直すのがめんどくさい。
ご教授ください。

477 :
Qt SDKのソースを見れば分かるけど、

TEMPLATE = subdirs

と書けばサブディレクトリにあるプロジェクトが全て1つのプロジェクトとしてまとめられる。

SUBDIRS 変数にプロジェクトを入れていく。
依存関係を設定してあげればビルド順も制御できる。

478 :
qmakeは慣れると便利だけど、慣れるまでが大変。
cmakeでも良いけど、Qtが使えるならqmakeの方がデバックが楽。

479 :
>>477
xx/yy/a.pro
xx/yy/b.pro
xx/yy/c.pro
この3つをまとめるとしたら、
xx/all.proをつくり、ここに「TEMPLATE = subdirs 」を指定する書き方でしょうか?

480 :
>>479
http://doc.qt.io/qt-5/qmake-variable-reference.html#subdirs

481 :
>>480
ありがとうございます。
翻訳しながら試してみます

482 :
あーあ、規模が規模だし、すっかりQt依存のコードになっちゃって
Qtを使わない環境に移植するときは地獄だなこりゃ

483 :
何が楽しくて今の時代にわざわざQtを勉強するのかな

484 :
>>482,483
お前らQtの専門スレまで何しに来てるんだよ。
巣に帰れ。

485 :
Creatorでキーボードショートカットの設定がモーダルダイアログなので
編集操作しながら設定できないのでやたら使いにくい

486 :
Apple Watch の技術プレビューレベルの対応をいたしました、って書いてあるけれど
UI作れないのに対応したとは言えないよ
Xamarinは作れるな

487 :
Xamarinと比べるとQtの未来は惨めすぎる

488 :
>>487
Qtのモバイルは全くダメ

489 :
Creatorのウィジェットフォーム編集でコピペしたときにパレットの変更が反映されたりされなかったりする

490 :
デスクトップアプリは便利なんだけどなあ。

491 :
Creatorでフォーム編集中のlayout*MarginとlayoutSpacingがプレビューと実行で小さく変わってしまう
ウィンドウサイズはフォーム編集設定通りになるのでレイアウトに入れたウィジェットの大きさがフォーム編集よりも大きくなる
見た通りに編集して実行できない

492 :
Widgetを動的に入れ子にしてる場合は
Designerの表示は参考にしかならんぜ。

面倒なのでスペース関係は必要な時以外0にして動かしてるな。

493 :
>>492
サイズポリシーはもっと酷くてDesigner表示では潰れてしまう
プレビューと実行では潰れない

494 :
https://github.com/jacobdufault/cquery
LSP対応のcqueryがまあまあ強力
とにかくメモリ使用量がめっちゃ少ない

QtCreatorをLSPに対応させてClangCodeModelを放り投げて欲しい
少し大きなプロジェクト開いただけで気がついたら1GBとか余裕で使ってるからな

495 :
Creatorの補完表示がやたらに遅いおかげで脳内補完が楽にできるようになった

496 :
うちのソースツリーはC/C++で17MBほどあるけど、
qtcreatorは250MB程度しか食ってないし別に重くはないぞ。

497 :
>>496
ソースツリーの量に関係なく
やっと補完表示されてから他のファイルを編集し
戻ってきてまた編集すると補完でまた待たされる
同じものが補完されたりされなかったりもする

ヘルプも一度目は大概他のが表示され、二度目に正しく表示される
ヘルプがあるのに表示されないのもよくある

補完とヘルプがすぐに正しく表示されないので使い難い

498 :
なんかDL失敗しない?

499 :
デザインエディターでサイズとかの入力中にキー入力ごとにプレビューが変わるのは筋悪、入力確定で変わるの筋良
ファイル名の変更でサフィックス含めて選択されるのも筋悪、サフィックスを除いた部分が反転されるのが筋良
フォーム上に置いたエレメントが選択できなくなるのはひどいバグ、他のファイルを表示させて戻ると選択できるようにはなる

500 :
俺QtQuickUserManになる!

501 :
文句あるならプルリクエスト出せよ。
何のためのオープンソースなんだよ。

502 :
>>501
オープンソースだからだと? 欠陥とバグだらけとは関係ない

503 :
僕は長い間Qt使ってるけど、Honeyは40年間いた事ないんです(><;)

504 :
一週間近くレスなかったか
オワコンだな

505 :
お前ら Qt Advent Calendar 参加しろよ
まあここにはキモカネおっさんしかいないから浮くだけか

506 :
JUCEにPersonalライセンスなんてものが出来ていたから使ってみる

507 :
>>505
一人で複数を除くと空きが16もある
人気ないな

508 :
>>505
埋めるためだけで内容が薄いのがちらほら
よいしょで気持ち悪いのもある

509 :
Qt6はBSDライセンス

510 :
ブーム来る前に終了

511 :
QMLのJavaScriptバージョンは古過ぎる

512 :
webassemblyでブラウザでqtがそのまま動くようになればワンチャンある?

513 :
フリテンリーチ一発ツモくらいの確率

514 :
御無礼なら余裕だな

515 :
俺に言わせれば、Gtkmmの方が良い。俺はGtkmmにゾッコンだ。

GtkmmにもQtQuickみたいなやつが欲しいな・・。Gtkmmick(Gtkモミック)みたいな感じのネームが良い。

516 :
スレ違い

517 :
GTKは糞

518 :
GUIツールキットってtk wx以外になにがある?

519 :
5.10.0ブランチが消えているな

520 :
chromeでad block系をONにしたままだと
https://www.qt.io/download
からDLするボタンが表示されなかったぜ
どういうことなんだぜ

521 :
>>520
商用買えLGPLどうのとか言われないこちらがお勧め
http://master.qt.io/official_releases/

522 :
VisualStudio2017でQt使うのは無理みたいだね。
日英のそれっぽいブログのとおりにやってみたけど、Qtのbuildが見つからない
」エラーでプロジェクトが作成できないよ。

523 :
cmakeでも無理?

524 :
えっ

525 :
できた。Qt本体インスコしてなかったわ

526 :
えーっ

527 :
初笑いゲットw

528 :
コードのライセンスについて勉強したいのですがいいサイトありますか?

529 :
qmake -project が二時間放置しても終わらない
たったの40行なのになぁ
Please help me.

530 :
電源長押し

531 :
>>529
無限ループでCPU使用率100%

532 :
cmakeでやりなさい

533 :
qmakeはMakefileやVisualStudioのソリューションを生成するツールだから、
qmake自体が直接何か処理するわけじゃない。
だから生成されたスクリプトやソリューションが何をしているかを調べるべき。
まあ十中八九書いた本人のせいという落ちだろうけどね。

534 :
>>533
qmake -projectが二時間以上終わらないのだからqmakeが直接処理しているだけ。
つまり、Qtのバグ。

535 :
jetbrains toolboxってQt製だけどUIはQtWebEngine使ってjavascriptで作ってるんだね
Qtの正しい使い方って感じがする
Qtがデスクトップで生き残るにはこれしかない

536 :
>>529
もしかして.runファイル使ってインストールした?
それするとqmakeが正常に働かないけど

537 :
>>534
ロクにやってることも知らないのによく Qt のバグとか言えるなあ。
qmake -project がやってることはカレント以下のフォルダを再帰的にたどって .cpp やら .h のリストを作ってるだけ。
カレント以下に symbolic link があって再帰してるか、必要なないフォルダへにリンクしてるだけじゃないの?

538 :
>>537
やってることは知っているよ、
そういうのを判断するように作っていないとしたらQtのバグだというのすらわからないのだな。

539 :
仕様がないやつだな

540 :
本体横の音量ボタンを無効にすることはできませんか?
一定の音量で固定することが目的で、代替案でも嬉しいです

541 :
スレ間違い、スルーでお願いします

542 :
「どこの誤爆か?」
と書こうとしたけどやめて正解だった

543 :
>>538
へー、わかってるのにわざわざ2時間以上待ってたんだ。だったらそもそも help me とか言う必要ないよね。
自分で recursive な link 作っておいてツールのバグとか意味不明だわ。

544 :
>>543
賢いプログラムならrecursive linkは考量する
もしそれを考えてqmakeが作られていならそれはバグ

545 :
賢くないプログラムを使いこなせるのは賢い人だけ

賢くない人はバグレポも出さずに文句を言い続ける

546 :
QListView + QStandardItemModel + QStandardItem で
画像のサムネイル表示を作っています。

一先ず、拡張子のアイコンを表示しておいて、
QtConcurrentRun::run で 差し替えているのですが、

マウスオーバー とか resize 等 が 発生しないと反映されません。

よくわかってないまま、
emit model->itemChanged(item)
とやってみたりしたのですが、うまくいっておりません。

こういう場合どうすればよいのでしょうか?

547 :
>>546
ああそれはね。AbstructItemModelに対して
モデルをリセットすると宣言すればいいのよ。

つまり、
emit beginResetModel()
emit endResetModel()
を呼び出す。当然ながら2つのemitの間でモデルの差し替えを行う。

548 :
>>547
ありがと♡ちゅっ♡😘

549 :
>>547
ありがとうございます。期待していた挙動になりました。

modelで制御するんですね。

550 :
http://blog.qt.io/blog/2018/02/06/sharing-files-android-ios-qt-app-part-3/
androidかiosでQt使ってる会社ってあるのかな

551 :
beginResetModel を使用して 1枚づつ更新できるようになったのですが、
選択アイテムが初期化されたりと、意図しないstateのreset が起きて困ってます。
(スクロール状況中だと戻ったりもしました)

できれば、item毎に更新したいのですが、どうすれば良いでしょうか?

552 :
今のPCだと1秒で20枚以上の画像ファイルサムネイルを作れるはずなので、
1枚ごとにアイコンを再描画したいと考えるのは馬鹿げていると思う。
毎秒数回程度に再描画の数を抑えるべき。

サムネイル画像のサイズは高々知れているので、
数百万個を一度に処理するというのでなければオンメモリで持っていて良い。
QVectorやQListなどに出来上がり次第入れていき、ときどき前再描画とかでいいのでは。

何番目のアイコンを選択してるかは自前で保持しておけばいい。

553 :
>>552
アドバイスありがとうございます。

描画頻度に関しては、ご指摘のとおりであり、
1秒毎にでききた分を差し替えるようにしていました。

551 の件は、描写頻度に関係なく 発生していましたので、
単純化して質問しました。
勝手に省いて申し訳ありませんでした。


> 自前で保持
reset 前後で、currentIndexを保持、復元を試しみましてみましたが、
いまのところ上手くいってません。試行錯誤してみます。


個人的には、
変更をmodel に通達したら、view が必要に応じて描画ってなって欲しいのですが、
できないのでしょうか?

reset は、強力すぎるというかやりすぎという感じがしてしまいます。

554 :
>>547
で書いたemit は不要だったね。こいつは通常のメソッドであってSIGNALではなかったようだ。

QListWidgetItemの実装を眺めたけどsetData()で結局 model->itemChanged(this)を呼び出してるから
それでいいんじゃね?

ちなみにQListModel::itemChanged()内で再度 emit dataChanged(idx, idx)を呼び出しているようだ。

ただし知ってると思うけどQlistWiget系は追加するたびに
再描画が発生するからフォルダ表示的な用途にはおそすぎて使えない。

555 :
で、カーソルの保持が消滅する件だけど、
私がやったのは初期表示とテキスト検索やボタンチェックで
表示リストを絞り込むような事を実装したから
元々カーソルの位置を保持する必要はなく、正直やってないのでわからない。

アイコンは2万件ほど登録したけど問題なく表示できる。
ついでにいうとAbstructItemModelは画面に表示されるアイテムの文だけしかアクセスしてこないので、
modelはデータをオンメモリで全部保つ必要はない。

556 :
一先ず

QListViewを派生して、 QListView::dataChanged を public から call できるようにして、
modelからの emit の代替にすることにしました。

次点としては
QListView->viewport()->update() を 適時call でも いけそうです。


嵌っていた点は、クロススレッド で emit(というか signal?) が 保証されてない点でした。
真っ当に対応するなら、クロススレッドの橋渡しを実装なのでしょうが、
スレッドまわりが理解できておらず厳しいです。


ひとまず納得できました。
お付き合いしてくださった皆様ありがとうございました。


>>555
> modelはデータをオンメモリで全部保つ必要はない。
これが、ちょっと気になったのですが、
全部登録しないと件数(というかスクロールバー)が不整合状態になりませんかね?

557 :
>>556
QListViewやQTreeViewはダミーノードに対する子要素のかたちで全体の要素数を指定することになるが、
そのときに全件相当する数値を返すだけだからオンメモリでデータを持つ必要はない。

558 :
>嵌っていた点は、クロススレッド で emit(というか signal?) が 保証されてない点でした。
あと、こういうときはQFuture/QFutureWatcherを使おう。
まともにマルチスレッドを手作りするのは馬鹿らしい。

559 :
invokeMethod を使用することで thread 越えできました。

auto index = item->index();
//emit item->model()->dataChanged(index, index);
auto arg = Q_ARG(QModelIndex, index);
QMetaObject::invokeMethod(item->model(), "dataChanged", arg, arg);

これで、model 側から view をcallする必要がなくなりました。

>>558
> QFutureWatcher
document をざっと見た感じ、thread の進捗管理関連しか分かりませんでした。
もう少しヒントになりそうなワードないでしょうか?

560 :
invokeMethod を使用することで thread 越え
これFAQだけど禁止されてなかった?

561 :
QtConcurrent::Run()でworkerに仕事させるのが基本。
それから

1. 戻り値のQFutureをコレクションに蓄えてあとで使う
2. QFutureWatcherに設定してSIGNALを発行してもらう

のどちらかで処理するのがQt流。
[2]の場合はQFutureWatcherはコピーコンストラクタがないので
何かのオブジェクトにメンバ変数としてぶら下げる必要がある。

562 :
https://qiita.com/false-git@github/items/38b6e69557b8459e9c0e
https://forum.qt.io/topic/72188/invokemethod-in-other-thread
https://stackoverflow.com/questions/13948337/why-using-qmetaobjectinvokemethod-when-executing-method-from-thread
https://qiita.com/hermit4/items/b1eaf6132fb06a30091f
http://vivi.dyndns.org/tech/Qt/QThread.html

moveToThread()やね

563 :
タッチパネルでTsLibを使ってるんだが
QMLでMouseAreaのonPressedは呼ばれるけど
onReleaseやonCanceledが呼ばれないことが稀にある。
Butttonも同じで押しっぱなしになることが。
TsLibの問題なのかよくわからないけど対処法は無いの?

564 :
Linuxなら/dev/event 当たりを観察して調べたらいいんでないの?

ピュアQtでWindows/Linuxでタッチパネル対応やってるけど今のところ致命的な不具合はない。
強いていうとダブルフィンガーのスライドの検出の精度が不十分で
指一本と判定される場合が結構ある。

565 :
改めて聞かれると微妙なのでもう一度確認は必要だけど
input/eventは必ずReleaseまで出てるように見えていたと思うが
Qtを通さずダイレクトに監視した場合なので
Qtがイベントを取りこぼすことがあるのかと。

566 :
QML を触る人はドライバ寄りの知識が浅い

というあるある偏見発動中


まぁオレも似たような状況でEvent 拾って試してるうちに、
素のXで試したりして横方向への理解は深まったけども

567 :
その逆、むしろQt/QMLを触りたて

568 :
>>545
qmake が賢くないことの言い訳にもなってないな

569 :
>>567
なんかワールドダウンタウン思い出した

570 :
それがどういう意味なのかまったくわからん

571 :
youtubeで動画見ればわかる

572 :
タイトルからしてつまんなそうというか
興味がなさ過ぎて見る気も起きない

573 :
ダウンタウンの番組で1番面白かったと思うけど
まあどうでもいいわ

574 :
存在すら知らないしダウンタウンそれほど好きでもないから
最初からどうでもいい

575 :
>>567
泥沼にようこそ

576 :
>>567
Qt/QMLはデスクトップとモバイルのどちらもまともに動かないから止めた方がいいよ。

577 :
>>576
人の言うことを聞かない上の人間の絶対命令でね

578 :
QMLはスクリプトだからさっと書いて動かせるのがいいところだけど、
やっぱコンパイルしてネイティブコードにしないと実行すると遅いよね。

579 :
>>578
それでQML Compilerってのがあるけれど商用でしか使えなくしている。

580 :
スクリプトならpyqtが最近便利だね。pythonのguiでは一番使われているんじゃない?

581 :
>>580
QMLはスクリプトだと言ってもUIしか作れない、
何かちゃんとしようとしたらC++で書かなくてはいけないので、
pyqtの方が格段に優れている。

582 :
pyqtは基本widgetじゃないの?

583 :
>>579
単独で販売してたらバカ売れしそうだが、結構面倒臭いライセンスなんだよな

584 :
http://blog.qt.io/blog/2018/02/22/qt-roadmap-2018/

pythonに力を入れるのは意外だな
QtCreatorのpythonサポートはちょっと楽しみ
補完や定義ジャンプはjedi使うんかな?

javascriptの補完って自前でパースしてると思うんだけど今だとtypescriptのtsserver使うという手はないのだろうか

585 :
PythonによるQtは一時期触ってたんだけど、
結局手続き的にUIを構築していかないといけないから
Qt Creator のuiデザイナーとか使えないし、
逆に不便に感じるんだよな。

586 :
>>585
uiファイルをdesignerで作ってpyqtのuic.compileUi使えばええやん

587 :
っていう情報を拾いにくいってことになる
python 知らんけど

588 :
qmlもpythonでやればよかったんじゃ...

589 :
当時はjavascriptがアホみたいに流行ってたからしゃーない

590 :
5.10でqt3d.animationてのが入ったみたいでとてもきになるのでインストールしてみたんだけど
サンプルないよね?
俺のインストールの仕方が間違ってる?

591 :
>>590
examples

592 :
>>591
すみません、
Qtをインストールするとサンプルも入っているのは知っています。
qt3d.animationのサンプルないよね?の意味でした

593 :
qt3dを使ってる人いるんだ

594 :
???@???
fluxやってからQtやると、シグナル飛んで、それ契機にコントロール更新されて、それでまたシグナル飛んで、その時に順序によってはスロットの要求する仮定崩れるから、メソッド呼び出す順序を注意深く並び替えて、みたいな昔ながらのGUIでありがちなやつが、辛くてもうね
1:45 - 2018年3月7日


☝ほんとコレ(´・_・`)

595 :
昔ながらのGUIでありがちなも何も、
昔ながらのGUIツールキットだからねQtは。

何を勘違いしてるのか知らんけど。

596 :
セマフオとか多用しまくってるのかな?

一連のシーケンスを機能単位でモジュールに分けて
Signal/Slotはその橋渡し程度でしか使ってないからそんな苦労してないな

597 :
Windows7、visualstudio 2017 community がインストール済みの状況で
最新のqt creatorとQt5.10.1をインストールしたのですが
MSVCのコンパイラが自動検出されません。

MinGWではなくMSVCを使いたいので検出させたいのですが
ググっても全く情報が得られず、どうしたら検出できるのでしょうか?

598 :
OKとか適用ボタン押されるまで変化させなければ良いだけ

599 :
>>597
コマンドラインで打ってみてパス通ってるの?

600 :
mingwでやれない理由は?

601 :
>>597
???
>>600
すでにMSVCで作っていたDirect3Dを使ったプログラムをQtCreatorで開発したいため

>>599
VSのパスでしょうか?
cmd開いてcl.exeなどとしても実行できないですが設定が間違っているのでしょうか?

VSもQtもインストールしたあと環境変数の編集などはしていませんでしたが必要なのでしょうか。

602 :
スタートメニューの中にパスを通したショートカットがあるはずだ

603 :
>>602
すみません、スタートメニューにショートカットがあるのは存じているのですが
ここからどうすればよいかわかりません。
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat x86
を実行してからQtCreator.exeを起動しても相変わらず検出されません。

Visualstudio2017からフォルダ構成が変わったみたいなのでVisualStudio2015もインストールしてみたのですが
コンパイラを検出できませんでした。

604 :
https://www.off-soft.net/ja/develop/qt/qt11.html

qtcreator自体をvcでビルドしろって読めるな

605 :
>Visualstudio2017からフォルダ構成が変わったみたいなのでVisualStudio2015もインストールしてみたのですが

さらに面倒くさくさせてどうする

606 :
qt forumみたところ今のqt creatorはqtcreator自体のビルドはしなくても自動検出は働くようになってるみたいです
ttps://forum.qt.io/topic/78962/how-to-use-qt-with-visual-studio-2017
qtcreator再インストールは最新とpreview版を何度か試したのですが
アンインストールしても設定が残っているみたいなので
ホームディレクトリ\appdata以下のファイルが悪さしているのかと思い、qt関係のファイルを削除したり再起動したり
試したのですが
全く変わらず…

607 :
もう手動設定でよくね?

608 :
>>606
VMとかでいいからクリーンなPCで試せよ
既に環境ボロボロに壊してる感じだから

609 :
>>607
手動設定も一度試して、上手く行きそうだったのですが、
できれば自動検出されたコンパイル設定で安心して開発したいです。
わがまま言ってすみません

>>608
os再インストールするっきゃない感じがして来ました

610 :
漠然とした不安に拘っても仕方ない気がするけどな

611 :
>>609
自動検出がされたりされなかったりするのはずっと前からのことで
ときどき設定したのも消えてしまう、もう諦めて手動設定している

612 :
>>606
https://github.com/qt-creator/qt-creator/blob/master/src/plugins/projectexplorer/msvctoolchain.cpp

613 :
>>612
検知してる箇所?こういうの追っかけてみるのもQt理解するのに有用かもな
Qt-Creator自体がQtの活きた実装例だから

614 :
>>612
Qt CreatorのオープンソースはGPLだから
見たコードを使ったアプリはGPLになる

615 :
目を塞げ

616 :
1. 見たくないのにそこらじゅうで見せびらかされてる。
2. 見てないのにたまたま似ていただけでも疑われ、変な噂を立てれる。
3. 潔白を証明したいなら、リバースエンジニアリングを許可しろと言ってくる。
4. (言いたくないが)、処女検査やR被害者の苦しみみたいなことが生じる。
5. そんなに真似されたくないなら最初から見えるようにしなければいいのに、勝手に
  見えるようにしておいて、はっきり言って迷惑。

617 :
自動検出に拘るの何でだ?

618 :
qt creator の行間がヒジョーに狭くて見づらいんだけど
広げる方法ない?

619 :
自分でビルド

620 :
他のフォントと比べたら分かるけど、
Source Code Proってかなり行間のあるフォントだぞ?

621 :
>>620
すみません。Source Code Proは使ってないです。
というか、qt creatorの行間は普通でした。

VSCODEやAndroidStudioやLinux版QtCreatorがちょっとだけ
行間広くてそれがあまりにも自分にあっていたので
QtCreatorのほうがわざと詰めてるのかと勘違いしました。

622 :
SailFIsh OSって使っているひといる?
iOS/Androidとの違いを教えてくれたらうれしい

623 :
QtCreatorで行間を広くしたかった件ですが、
Rounded M+というフォントをインストールして
QtCreatorのフォント選択で「Rounded M+ 1m」を選択、
フォントサイズを10ptにした後、拡大率を105%にすることで満足の行く見た目になりました。

ttps://imgur.com/gnLGHxe

Windowsにはよくあることなのですが
アンチエイリアスやClearTypeでもなくならなかったギザギザが
拡大率を中途半端に105%と設定すると消えました。

624 :
>>616
ソースコードを読む前にライセンスを確かめるのは常識

625 :
Windowsにあるというか、WindowsのTTFは中にビットマップフォントが入ってるから、
10ptとか12ptとか、よく使われる解像度はビットマップが優先して使われる。
そういうビットマップは視認性を優先してアンチエイリアスはオミットされることがある。

626 :
>>625
視認性を優先しようとして視認性が悪くなっているWindowsのお粗末さ

627 :
>>626
視認性っていうのは一般に白黒のコントラストが高い方が高いんだが、意味わかってる?

628 :
>>627
だからWindowsはお粗末

629 :
と、貶めて満足したいだけのマカーでした。

630 :
>>624
読んで無くても、
 「読んだだろ、嘘つき、潔白を証明したいならソース見せろ」
と脅してくる。

631 :
>>630
だから何だ?って話だな
どんな世界にもいちゃもん付ける人は一定割合存在するわけでそれが嫌なら社会との接触を絶つ他無い

632 :
>>631
自分で勝手に裸体を見せておいて、見たならお前も見せろ、みたいな事言ってくる。

633 :
>>631
「一定割合」どころか、ソース公開する側が正義、隠そうとする側が悪みたいな風潮が
あるから、大多数からバッシングを受ける現実がある。

634 :
>>632
なるほどその手があったか

635 :
>>632-633
だから?
世の中はそういうものだって>>631に書いたつもりだが?

636 :
>>635
風評被害でプロジェクトが潰れる。

637 :
>>636
その程度で潰れる弱いプロジェクトならどうせ長続き出来ないし淘汰されても仕方がない
それにしても ID:sIKOxZd2 は温室育ちの世間知らずか引き籠もりなのか?
甘えたこと言いたいならママに言えよ

638 :
ふーん、Qtが使われる事を願ってるよ。。。

639 :
GPLに気をつけるのはまあいいとして、
何か害悪みたいに怯えるのはどうかと思うぞ。
どこまでがOKでどこからがダメなのか勉強して知っておけば何も怖いものではない。

むしろ自分がOSSで公開する分には都合のいい場合すらある。

640 :
おわこん

641 :
>>639
ソース非公開にしたい人には、困るんだな、これが。

642 :
>>640
同意。

643 :
Qtがオワコンってんなら
こんなスレまで何しにきてるんだ?
フレームワークなんていくらでもあるんだから他当たれよ

644 :
>>639
LGPLについて、あるサイトで勉強しても、別のサイトでは全く別の事が書かれ
ている。また、質問サイトの回答で、ある人が「これこれこういうことです」
と書いていても、別の人が、「それだとOSS作者が損だ。公開すべきだ」と怒り
に満ちたような文面で言う。同様にストールマンも非常に激しい口調で、LGPL
であっても原則的には公開の義務があるかのような事を言ってくる。
そして、LGPLのライセンス自体を読んでも良く分からない、玉虫色な感じで
もやもや感が残る。結局、クローズドにしたい人の立場では書かれていないから
そこに載ってないやり方ではOkなのかダメなのかが分からない。後からダメと
言われれば全部パーになってしまう。

また、訴えられるだけで、さらに言えば、何か悪い噂を立てるだけでアプリ作者
にとっては痛手だし、こんな状態ではLGPLは使うわけには行かない。

645 :
>>643
ここに来ているのは、事実を伝達するためだよ。

646 :
Qt以外のフレームワークで良さげなのってある?

647 :
>>646
ない。

648 :
C++にフレームワークというものが必要ない
GUIならGUIライブラリだけあればいい
それ以外のものが必要ならそれだけどこからか取ってきて継ぎはぎして作る
MSですら大型のフレームワークをスタンダードにできなかった

649 :
Apple製品を無視すれば楽になるかなと。

650 :
>>645
意味不明。オレはQtで問題なくアプリを開発して公開してるし。

C++にGUIフレームワークが必要ないと主張するのは勝手だけど、
だったらなんでこのスレまで来てるんだよ。
勝手にスクラッチで開発したらいいだろ。
何考えてるのか意味不明な奴らばかりだ。

651 :
Qtはオワコン

652 :
たしかに

653 :
QMLのドキュメントは実際の動きと違いが多すぎて酷いな

654 :
末期症状

655 :
Qtがオワコンとか言ってる奴は何なんすか?あのマイナーツールキットGtk+のC++版であるGtkmmでさえ
GEditやMySQLで着々と頑張っているんですよ。

Qtがオワコンとか言ってる奴は完全なお門違いですよ。

俺はね、この板でGUIはHTMLで決まりとか言われたから、Electronやってみたんですよ。
でもね、やっぱあれダメですよ。

俺が思うにGUIはやっぱQtかGtkmmじゃないとダメですね。特に、QtQuickは最高です。

656 :
ElectronはGUIツールキットとは言えないんだよね。
どちらかというとウェブ技術ベースのウィンドウマネージャに近い。

画面上に表示するウィジェットや配置はベース技術なしに全部自分で構築しないといけない羽目に陥る。

QtやGTK+から始めれば当たり前にあるものがない状態から始まる。この苦痛は耐え難いものがある。

657 :
ライセンスが糞面倒

658 :
高い

659 :
webのGUIと比べるなよω

660 :
QT(Quick Time)に親兄弟親戚皆殺しされたんだろ?
そりゃ見境なく何年もネガティブキャンペーンやるだろ

C/C++がオワコンって言ってるJavaアプリプログラマ層とあんまり変わらんよ
自分の狭い了見で世界のすべてを語ってるだけ

661 :
ライセンスが糞面倒

662 :
普通のデスクトップアプリを作るならQt一択なのはわかるんだけど、バグを回避しながら使わないといけない。
特に日本語入力回り。
OSSなんだから自分で修正←簡単にはマージしてくれないから無理。
※有償版もあるので簡単にマージしないのは責任もって開発してるってことかもしれないし、マージしないのがダメってことではない。
安倍総理と同じで他に選択肢が無いからQt一択になってるだけだと思う。

663 :
ちなみに、Qt使って最初に気持ち悪かったのは勝手にメモリー管理されることだけど。
時間の都合でサーバーサイドにQt使ってみたら超安定して長期動作してるから、きっとあれで良いのかもしれない。
杞憂ってやつか。
でも、明示的な管理ができないとなんか気持ち悪いよね。
Javaとか使ってる人なら自然に受け入れられるんだろう。

664 :
Javaのガベコレとは違って
widget同士でチェーン管理されてるんじゃね
Javaよりは明示的に追いかけられるはず

665 :
Qtの生存管理はオブジェクトツリー方式。
親がRばその子孫は全て開放される。

最上位はスレッド自体になっているので、
ワーカースレッドで生成したオブジェクトはメインで使いたい時は
メインのスレッドオブジェクトに登録し直す必要がある。

666 :
QMLってメソッドのバーチャルオーバーライドすらできないのか。
型厳密と言いながらenumの型チェックもできずに整数で扱うので間違えて書いてもエラーにならずにおかしな動きをする。
ダメな言語だ。

667 :
うむ

668 :
Qt.AlignLeft,Text.AlignLeft,TextInput.AlignLeft,TextEdit.AlignLeft,TextArea.AlignLeft,TextField.AlignLeft
言語として破綻している

669 :
JavaFXは次期Javaの正規プロジェクトから外されるんだってなw

Qtもオワコンだし、Gtkも当然オワコンだし、おとなしくC#でもやっとけって暗黙の了解w?

670 :
しっかし、スレ違いだけど、JavaもJavaEEも外すし、JavaFXも外すし、JavaSEは既存の企業からもライセンス料とることになったし、

元のJavaは何が残るの・・w Qtも似たような道を通ると何も残らねえんじゃねえのか・・w

なんかそうなる様な気がするw

671 :
でもGtkとQtは根強いLinuxのベース環境があるからな・・w 強そうだな。

672 :
w は句読点ではない

673 :
GTKは糞

674 :
そろそろ新しいクロスプラットホームなGUIツールキットが出てきてほしい

675 :
実際開発者の自己満足以外で
ユーザー側にクロスプラットフォーム求められているソフトってあるのかね
もしくはクロスプラットフォームに対応するコストに見合う売り上げが見込めるとか

各種OSのユーザー層考えると「こういうことをやる場合はこのOS」とか決まってそう
マイナーOSでヒットしたソフトを移植する際は
最初からクロスプラットフォームでつくっときゃよかったなと思うかもしれないけど
そんなの作る前からわからんし

676 :
個人的には、Win用に作ったソフトがスマフォで動けば、人に見せびらかせそうで
魅力がある。あと、Linuxで動けば、今後運がよければ一儲けできるかもしれない。
Linuxは嵐の前の静けさなのか、それとも衰退していくのか先が読めないけど。

677 :
少なくともWin/Mac/Linux共用で動くようにしておけば、Linuxで有名なアプリになることは他よりたやすい。

678 :
Embarcadero系が頭に浮かんだけど、あれはLinux非対応か。

679 :
やがて悲しきクロスプラットフォーム、クロスプラットフォームは幻想
所詮クロスプラットフォームは最大公約数、デスクトップとモバイルの最大公約数はとても小さい
Qtの将来はもうない

680 :
???

デスクトップとモバイルをクラスプラットフォーム化しようなんて誰も考えてないだろ。
お前は誰と戦ってるんだ。

681 :
Qtはもう組込だけしか考えていない
デスクトップとモバイルはKDEとの約束があってBSDライセンスにならないためのおまけ扱いでバグ修正や改善は二の次

682 :
まあそれが妥当やね

683 :
雛型使わずもう少し捻って自演しろよ…

684 :
???

OSSのソフトウェアのライセンスを何にするかは著作権者の専権事項であって第三者は文句言えないんだが?
だからQtの運営会社がBSDライセンスに変更すると宣言すればBSDになるだけだ。

PyQtは当時のノキアがLGPLに変更して欲しいと要請したが、PyQtの開発チームが拒否したために
ノキアはPySideを0から開発して LGPLで公開した。

685 :
で?

686 :
Qtで作られたopentoonzの盛り上がらなさからいってQtは難しいのですか

687 :
どうしてもLinuxで動かしたいのでなければわざわざQtを選ぶ理由はないかと

688 :
で? って言いたいのはこっちなんだが。
Qtなんてただのツールキットであって道具だぞ。
使いたければ使えばいいし、使いたくなければ使わなければいいじゃないか。

689 :
周りとの会話に参加せず、
ひたすらモバイル回りの文句だけ言い続けるやつが居て気持ち悪いわ。

690 :
QMLの気に食わない点を上げて、Qt (C++)はクソ

が常套句になってるよな、この粘着君

691 :
GTKは糞だと思うがQtは頑張ってる
そんな漏れはwx使い

692 :
Qtインストールしようとしたのですが、45GB近く空き容量必要なんでしょうか??
空き容量足りません。

693 :
ごめんさい。ツリー展開できて色々インストールするコンポーネント選択できました・・

694 :
なんだ、これ。日本語入力してるとバグるんだけど。このQtのエディタ。
ひでぇ品質だな・・

695 :
是非も無し

696 :
《 後継開発環境のご案内 》

LinuxMintのダウンロードはこちらから。

Main Page - Linux Mint
https://linuxmint.com/
https://linuxmint.com/download.php
---------

AGK無料試用版の配布開始(リンク先にWindows、Mac、Linux版のファイルが直接置いてある)

AppGameKit - Free Trial Version
https://www.appgamekit.com/trial

無料試用版

AppGameKit無料トライアル版は、AppGameKitの主要な領域すべてにアクセスできるため、
完全に評価することができます。完全版の有料版には、次の主要機能が含まれています。

・ Android、iOS、HTML5にプロジェクトをエクスポートする
・ アプリをデバイスに直接ブロードキャストする
・ コンパイルされたプロジェクトからウォーターマークを削除する

697 :
>>684
ノキアの横暴だということすらわからないのか

698 :
>>690
QMLのいい加減さにはうんざりだよ

699 :
>>691
頑張っているのとまともなとは違う

700 :
>>694
Qtの日本語入力は最低

701 :
>>689
デスクトップも駄目だなのに、モバイルが駄目なくせにクロスプラットトフォームなんて言うな。

702 :
ホントにここ数年間、ひたすら粘着し続けててたんだな

そこまで続けられる燃料が正直気になるわ

703 :
>>697
わけわからん。
OSSにおいて、ライブラリが増えて選択肢が増えるのは常に善だ。
お前はOSSのなんたるかが全く分かってないとしか思えん。

意味も分からずわめいてるだけなら黙っててくれないか。

704 :
Node.js と io.js だったっけか
ああいうの思い出した

705 :
商用のWindowsとLinuxで動くアプリだと大体Qtが使われてるね。まあうん百万するアプリばっかだけど。

706 :
Qt自体の信頼性も怪しい部分とかちょこちょこあるのに?

707 :
coreライブラリとnetworkライブラリは枯れているし、いい感じで抽象化されているしね。Windowsだけなら.netだけで十分だけど、Linuxまで考えるとコードの共通化は大事だよ。
現状Javaは重すぎて話にならんから、qt一択だね。

708 :
商用に限らず、いろんな大手チップ、デバイスメーカーが評価ボード提供する際
その制御、設定用ツールなんかにもよく使われてるね

709 :
よく使われてることを知っている理由を知りたい

710 :
どんだけ現実を受け入れたくないんだ?

単純にlibQt5系のライブラリが同梱されてるアプリだったり
ドライバ層のCソースを流用しやすく、かつマルチプラットフォームも実現する意図が丸見えなアプリで、
メニューのアイコン領域がそのままでLinux 風レイアウト丸出しな、UI に関しては手抜きなアプリ、
律儀にヘルプからQtのバージョンをダイアログで出す、なんてのもある
PyQtでのコード付きサンプル提供ってのもあったな

世界最大手、それに近い規模のメーカーが出してくるのは、
この手の顧客がWindowsに限らないためにeclipseのアドオン系かQt製が多い

711 :
>>703
QtはOSSなんて嘘っぱち、商用で儲けたいだけ

712 :
>>710
LGPLv3で縛った糞ライセンス、こんなんでは使えない

713 :
>>712
どう使えないの?別につかえるじゃん

714 :
他人に具体的に根拠要求するくせに、根拠なく、猫の額ほどに狭い視野だけで否定する

小学生かな?

715 :
自動車業界でもよく使われてるね。
ナビとかメーターパネルとか。
量産品には使われないとしても(使ってるケースもあるけど)、プロトタイピングは多い。
WindowsとかのPC上で作り込んだものをQNXやAndroidのボードに持って行って動かす、みたいなやり方をしてるとQtが便利。

716 :
高い

717 :
高杉

718 :
>>711
Qt Community Licenseで使える範囲のQt系のライブラリは全てGPL/LGPLで使えるじゃん。
それのどこが嘘っぱちなのか全くわからないんだが。

論理的に説明してくれよ。説明できないならレス数の無駄だから黙れ。

719 :
>>713
LGPLv3は製品にインストールする方法を教えなければならないのだよ。
そんなことはできない。

720 :
>>714
小学生としか指摘できない幼稚園児さん。

721 :
>>718
黙るのはお前、LGPLv3とLGPLv2の違いを知らない。

722 :
>>715
使われているように宣伝されているだけで実際には使われてない。

723 :
>>721
??? そもそもQtは GPLv2/GPLv3/LGPLv2/LGPLv3 の4つから選べるはずなんだが。

724 :
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_())

725 :
せめてお前、Pythonスレでもらったアドバイスを元に修正してから来いよ
各行で何やってるか理解したら、もう少しマシなコードになるだろ

726 :
QTのMainWindowで、全画面ボタン「□」を消したいです。
setWindowFlagsでできるのでしょうか?
ご教示願います。

727 :
>>726
setWindowFlagsでできます

728 :
Pyside 名称変更するんだな

729 :
公式で MinGW 64bit 版出るようなこと書いてあった気がするけど
無くなったんだろうか?

730 :
そんなん別に自力でビルドしたって大してかからんのだし。

731 :
僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』

HMJSV

732 :
HMJSV

733 :
カラー絵文字サポートが今年末に来るの?

734 :
Qtで作成したコード(Androidアプリとして完成)を、
Android Studio上で動作させるようにするのは
どうすれば良いでしょうか?大変でしょうか?

大雑把な質問ですみません。何らかの指針が欲しくて書き込みしました。

735 :
基本的にQtでコードを書いたらQt系の環境でビルドすべきだと思う。
Android StudioがJava以外の言語のサポートをしてるかどうかは知らないが、
QtのC++やQMLをビルドできるものなん?

私ならC#+Xamarinで作るけどな。

736 :
コメントありがとうございます。

QtではC/C++で作っています。
Qtのライセンスの関係も含めて、Javaで書き直す必要があり、
同じAndroidアプリをAndroid Stduioを利用することにしました。

そのため仰られる通り、C++/QMLなどのJavaへの移植の難易度が判らず、
どう手をつけていこうか悩んでいます。
何かアドバイスやサイトがあれば教えて頂きたくお願いします。

737 :
C++(Qt)からJavaに自動変換したいっていう話なら
世の中五万どころかもっと大量に需要はあるだろうけど
今のところ使えるものなんて聞いたことがないな

738 :
qtがOpenSSLを見つけてくれないんですが、これ明示的に指定するのはどうやってやるんですか?

739 :
環境

740 :
>C++/QMLなどのJavaへの移植の難易度が判らず

自分で判断出来ないならそもそも移植諦めた方が良い

741 :
>>738
自己解決
openSSL_1.1に対応って書いてあったからてっきり公式ビルドも変わると思っていたが、公式
ビルドは1.0で、互換性無いから1.1で使いたかったら自ビルドしてねってことですね

742 :
security hole

743 :
ようやく自作アプリをWindows/Linux/Macの3OSに対応できた。
長い道のりだった……。

744 :
Androidも残ってる

745 :
t-kernel もあるぞ
もうメンテされてないかも知れんが

746 :
UNIXは?

747 :
知らんがな。
ソースコードは公開してるんだから、欲しければ自分でやったらどうだ。

748 :
iOSとAndroidのアプリをQtで作ろうとしたけれどまともなもの作れないじゃないか。
どっちのUIもひどい。iWatch対応ってなっているけれどUIを作れないのは嘘つきだ。
モバイル対応はまったくできていない。

749 :
じゃけんXamarin使いましょうねー

750 :
○Windows アプリをそのままAndroid で動かせる
×Android SDKをフルセットで扱える

iOS?知らんがな

751 :
JE3

752 :
JE3

753 :
福岡で人殺したのと同じような粘着を感じる

754 :
Qtって誰が使ってるんだろう
話題になったアプリがQt製だったことなんて2年前のopentoonz以来知らないわ

755 :
>>754
https://qiita.com/hermit4/items/5156203201694966c9e4
有名どころだと Kindle for windows, Telegram, VLC あたりかな?

756 :
ぶっちゃけ、デザインに『凝ってない』アプリか、
Windows でライブラリが同梱されてるかぐらいじゃないと気付かないと思う

業務用、組込み用なんてわかるはずもなく

757 :
pythonでGUIだとQtくらいしか選択肢ないんちゃうの

758 :
手元のPCで見る限り、
・フリーソフトの動画編集ソフトで海外製のやつはだいたい
・DropBox
・Adobe AIR/OpenCL SDK
・画像ビューアがいくつか、
だな。
スタティックリンクされてるのまでは調べてない。

759 :
最近の新規アプリでQt製のやつある?

760 :
>>757
Tkinterが標準でしょ・・。

あと、PyGtkもC言語のGtkよりWebページだくさんあるよ。

761 :
Pythonならwxだろ

762 :
こちらのゲームツールを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
---------------------------

763 :
>>762
エラーメッセージで検索すると似たようなのが出てくる。
https://github.com/ContinuumIO/anaconda-issues/issues/1270
・2byte文字を含まないフォルダにファイルを置く
・platforms にある qwindows.dll を exe と同じ階層にコピーする
のどちらかで解決できそうだが

764 :
>>763
残念ながらどちらともダメでした。
回答ありがとうございました。

765 :
ファイルパス・PC のユーザー名など、システムに日本語を使うな

半角英数字だけを使え

766 :
それ、どっちかっていうとmingwの制約かと

まぁ開発者にとって気持ち悪さは半端ないけども

767 :
>>762
それはqwindows.dllが足りないときに出る症状だ。

通常platforms\qwindows.dll に配置すればいい。

qt.confを各と、Qt製アプリが必要とするQtのプラグイン等のパスを変更することができる。

Qt SDKのwindeployqt.exeにアプリのexeをドロップすると、そのアプリが必要とするプラグインや
設定ファイルが自動生成されるからやってみるといいかもね。

768 :
回答ありがとうございます。
結果からいうと、動くようになりました。
解凍でwindows10の展開機能を使いました。
サードの解凍ソフトではエラーが出るのです。

作者殿の回答をよくよく見てみれば確かにそう書いてありました。

769 :
良かったらそのエラーになった解凍ソフト教えてほしい

770 :
当人じゃなく、別件ではあるが、
圧縮解凍ライブラリが静的リンクされてるやつ、
もしくは32bit系当時のソフトだとなりがち

メジャーなライブラリで、dll形式で同梱されてるやつだと、
そこだけ更新すりゃ特に問題起きないね

771 :
たとえばLhaPlusみたいなクソアーカイバだと、
deflate64なzipの展開をぶっ壊れた状態で平気で展開するから
作者に余計なクレームが届く悲劇が起こる。

そのくせLhaPlusは公開したままだしな。
マジ迷惑だわ。

772 :
古すぎるそんなの使うなって話だけど
それなら公開したままのサイトの責任もあるよな

773 :
お気楽な無責任バグ修正ビジネスモデル
Open Governance → Open Maintenance → Waiting for 3rd party response
→ Too old → Removed

774 :
Qt Creatorで開発を始めたところです。
Windowsで、日本語を含む文字列「テスト.txt」を引数に渡すと「???.txt」に文字化けします。
デバッガで見ると、main文のargvの時点で「???.txt」になってます。
QString::fromLocal8bit(argv[1])の結果も同様です。
これってなぜでしょうか?
(Linux上では問題なし)

775 :
encoding設定汁

776 :
>>775
ファイルをUTF-8 BOM付きにしたらイけました。
(コンパイラはVisual C++)
ありがとうございます。

777 :
ちなみに Visual Studio で、ソースコードを BOM なしにするとひどいことになるゾ

主に日本語コメントがめんどくさくて、
/*これはダメで*/
/* これはOKだ */

778 :
「無料が基本」のオープンソース文化圏で有料ソフトウェアの販売は受け入れられるのか?
https://gigazine.net/news/20180725-hiri-on-linux/

このhiriっていうメールアプリQtを使ってるみたい

779 :
>>777
スペースの有無で上手くいかなかったりするってことですか?

780 :
BOM なしUTF8にした場合の話ね
/*の直後にマルチバイト文字が来ると誤判定されるっぽい

まぁVisual Studio としてもBOM ありを推奨してたはずだから文句は言えないのだけど

781 :
というよりも、プログラムに日本語を混入する方が馬鹿げているので、
プログラム本体は全て英語で作って日本語の部分はコメント程度に留めておくことを進める。
文字列リテラルとかは全部外部化する

782 :
20年前なら俺もそう思ってた

783 :
変数に絵文字を使う時代です😝

784 :
昔、YPSと言う日本語+フローチャートな言語があってな・・・・ってまだ作っとんかい!?→不治痛

785 :
>>781
Qtは特にそうだな

786 :
文字列リテラルを全部外部化するといっても、必ずしもテキストファイルを読み込むコードを手で書く必要はない。
tr("abc")
ってプログラム中に書いておいて、Qt Linguistで言語リソースを作ってアプリにバンドルすれば、
実行時には文字列"abc"に対してQtが自動的に
日本語の文字列を割り当てる形でプログラム中に読み込まれる。

もちろん言語リソースの選択はPC環境の言語に合わせて自動選択することも明示的に選択することもできるし、
iniファイルとかを作って自前で差し替えするコードを書くこともできる。

787 :
midiの編集ソフトを探しています

GUIアプリケーションの開発になるので、VisualStudioでMFCと思い立ち、WindowsAPIにはmidi関連のAPIも含まれてるので、面倒なサードパーティライブラリを用意したりmidi再生部分を自作する手間が省けると思いました

調べたらQtもmidi関連のAPIを持ってそうな雰囲気なのですがどうなのでしょう?
ただ、日本語の情報がなさそうでした

確かFluidSynthのGUIがQt製だったように思いますSoundFontが使えるのでmidi化したあとのプレイバックに使えますかね?

788 :
openmidi

789 :
ふと思ったんですが、スキャンした楽譜からMIDIデータを生成するんじゃなくて、例えばMuseScoreのような楽譜xmlを書き出した方が良いですよね

790 :
楽譜の読み方とかよく知らないけど、五線譜のエディタがあっておたまじゃくしを配置するとドレミとか再生に必要な情報がキューイングされて行って、midiファイルをエクスポートする時にmidiのデータ形式に変換されるイメージだった
楽譜の画像解析とか面倒な事はしなくて、ユーザーに楽譜を書かせる感じ
openmidiのページにある世界樹ってやつの機能切り出し版みたいな

791 :
任意の位置の点が0か1か、と、楽譜、なら、こりゃもう楽譜OCRだろうと思ってたw

792 :
soundOCRなら意味あるけど楽譜OCRなんて馬鹿のやること

793 :
単純にドレミをmidi形式でシリアライズするぐらいならWindowsAPIとかQt備え付けのAPIで充分かな〜と思ってたけど、エフェクトとかも編集したいとか要望が複雑化してくるのなら確かにopenmidi使うのが良いかも
openmidiで物足りねぇ俺はもっと変態的な事がしたいんだ!ってなった時にはサウンドプログラミングを学ぶのも手かな

794 :
アプデcreatorがやかましくなったぞ

795 :
Qtで表を表示したいんですけど
1つのヘッダーに2列データを表示するみたいなことって出来ませんかね?

796 :
可能

797 :
>>795
QStyledItemDelegateを使って描画イベントを乗っ取るのが一番簡単だと思う。

基本的には元の描画方法をコピペして乗っ取っても同じ描画になることを確認してから、
少しずつカスタマイズしていく。

798 :
>>797
QStyledItemDelegateですね
ちょっと調べてみます
ありがとうございました

799 :
QPrintDialogでオプションで設定した用紙サイズが反映されないんですが、
なにか原因ありますかね?

printer->setPaperSize( QPagedPaintDevice::A3 );
printer->setPageOrientation( QPageLayout::Landscape );

QPrintDialog *printDialog = new QPrintDialog( printer, 0 );

printDialog->enabledOptions();

800 :
プリンタは扱ったことないけど、とりあえず既存の実装例を参考にしてみたら?
https://github.com/Qucs/qucs/blob/0ef64c307d72fa9c3d8075d6a69b79146f060e40/qucs/qucs/printerwriter.cpp

801 :
electronでいいよ

802 :
質問です
C++ではこんな風に書けばメインスレッドに簡単に投げられますがpyqtで似たようなことをするにはどうすればいいでしょうか?
QObject::connect(&QObject(), &QObject::destroyed, [&]() { });

803 :
pyqtにもconnectはあるよ

804 :
こんな風にしたいんだけどどうすればいいのか全くわからない
そもそもconnectが見つからない

from PyQt5.QtCore import QObject
QObject.connect(QObject(), QObject.destroyed, lambda: print("print"))

805 :
instance に connect 汁

806 :
フラットデザインといいますかwebページっぽいデザインにしなくてはいけなくなったんですが
webengineを使わずにそれっぽいデザインのサンプルはどこかにないでしょうか?

807 :
Qtアプリの見た目を変更するのはWidgetにStyleSheetを適用するんだが、
アプリ全体に同じようなStyleを統一的に適用するためのThemeという仕組みが存在する。

基本的に各OSごとに用意されているわけだが、フラットなUIを実現してくれるThemeがなにかあるかもね。
見つけたら報告してね。

808 :
Electronで作るべきだと思います🙋‍♀

809 :
windows10でQt5.11+qtcreator4.6にしてから、
日本語入力して確定前にBackspaceで入力中の文字を削除すると、
実際のテキストでは消えているのに、表示上は消えず、しかもカーソルが
消えてしまう、みたいな現象があるのですが、解決方法ご存知の方いませんか。

810 :
>>808
俺もそう思うがリバースエンジニアリング対策でコンパイルできる言語でないとだめだと言われた

811 :
>>810
Javaもc#も駄目なのか

JavaScriptを難読化させたら読む気にならないコードになるが。

812 :
ウィジェットコンポーネントが整備されてない
Electronでまともなアプリを作ろうと思ったら火傷するだけだと思うんだがな。
最近のエンジニアはそう思わないんだろうか。

813 :
WindowsのQtで、USB シリアル使用中に、USBケーブル引っこ抜かれたときのえらーって
検知・対処方法ってわかりますか
スレッドの終了またはアプリケーションの要求によってI/O処理は中止されました
と出て、次に延々と
デバイスがコマンドを認識できません
のダイアログが出てきて追われないんです。
仕方なしにタスクマネジャから殺しています
殺さずに自分で終わりたいのですが

814 :
>>813
んー、Windowsでシリアルデバイスを扱うこと自体はWin32 APIでもそれほど難しい処理ではないから、
一度自力でサンプルを書いて挙動を調べたほうがいいと思うよ。

API越しのデバイスの実際の挙動を把握してから、自分で作ったQtのプログラムでどうすべきか考えればいいのでは。

あるいは、GUIだけQtで作って、通信部分はWin32 APIで記述するキメラ実装であってもいいわけだし。

815 :
>>813
https://social.msdn.microsoft.com/Forums/ja-JP/ed6d2d59-15c2-46b6-823f-761b894d1ae3/serialport12398datareceived1245212505125311248812395123881235612390?forum=csharpgeneralja
これで対処できるのでは

816 :
boostにシリアル通信用のライブラリも無かったっけ

817 :
asioだっけ

818 :
boost.asioはライブラリを作るためのライブラリなので便利なライブラリを見つけてきた方がいい

819 :
c++の構造体をqml側で読み込むには構造体の要素それぞれをQ_PROPERTYマクロで宣言するしかないのでしょうか?

820 :
コンパイルが糞重いんで、
Zapccに対応してくれないかな〜

821 :
サブプロジェクトに分けて、最終成果物だけリビルドしたらそれほど遅くはない

822 :
qbs死んだか
http://blog.qt.io/blog/2018/10/29/deprecation-of-qbs/

qmakeも終わらせてくれー

823 :
まぢかw

qmakeが今ひとつ書きづらいところがあるからqbsに将来的に移行しようと思ってたが、
(installシステムを活用しないとまともに処理が書けない)
CMakeに開発リソース突っ込むのかよ。

こりゃあqmakeも捨ててCMakeで書き直したほうがいいかもなあ。

824 :
>>821
レスが遅れてすみません
サブプロジェクトに分ける方法を試してみます

825 :
あれから勉強してqbsで
自作のProductやModule/Ruleを書いて動かせるようになったが、
資料がなさすぎてRるな。

公式ソース添付のテストプロジェクトが一番マシな資料というね。

826 :
最近転職活動してるんだが、Qt の需要高くなってんのな
車載経験してるのもあるけど、他業界の組込み系もQt採用を追従してて、
そんなにアピールしてないのにそこに食い付く企業さん多い

827 :
マジで?

828 :
まあQtの組み込みアプリをメンテして50万って仕事ならあるな。

829 :
組み込み系UIでまともに使えるフレームワークがあって、タッチ操作がさばけるのはQtくらいしかないからな

830 :
妄想乙

831 :
いや、求人情報あるんだから見ろよ。

832 :
これからはQtですよね?

833 :
キュ〜ティ、キュウティ〜 キュ〜ティペア〜

834 :
>>833
https://www.youtube.com/watch?v=TvDWJif1sSI

835 :
javaからの移行考えてるけど
メモリリークが不安で踏み切れないです

正式記述は覚えることは基本として
使いやすい(手間のかけない)fullGCみたいのってあります?
メモリリークの検出機能でなんとかなるのかな

836 :
そんなものはない。
ってかメモリ開放は全て責任をとった上で、
メモリブロックの開放確保のアルゴリズムをライブラリ切り替えで変更するのがC++の流儀。
まあ、Qtはその部分も内蔵してるので、ここを差し替えるときは自力でQt全体のビルドが必要になるが。

メモリ確保がシビアなら、実際の処理を別プロセスにやらせて、プロセスごと殺せばいいんじゃね。
その方が手っ取り早い。

837 :
よく思うのだけど、Qt のサンプルとかってやけにnewで動的確保してない?

必要な時に初期化しつつ生成ならまだしも、
常に持ち続けるパラメータだったり、生成が一度限りのインスタンスだったり

QObject や QWidget のベースクラスへのポインタ渡せば、
自壊時にメモリの解放もしてくれます、って機能は、
逆に new で動的確保したアドレスでないとダメって縛りはないですよね?

838 :
親子にしておけば勝手に解放してくれるから
newしまくるのがQt流

839 :
qtってスマポ使わないの?

840 :
QtつーかC++はnew使いまくりだろ普通

841 :
new使いまくるのはオールドスタイルのC++だな

842 :
それじゃnewスタイルは?

843 :
Qtで2万行ぐらいのアプリ作ってるけど、
結構ローカルスコープでインスタンスを扱うことが多いかな。

QImageとか、カジュアルにインスタンスをコピーしても
パフォーマンスの問題がないのは嬉しいね。

ポインタをやむを得ず使うのはコピーコンストラクタがまともにないクラスを扱う場合。

844 :
そりゃインスタンスは余程のことがなけりゃ滅多に動的では取らんだろー
今も昔も変わらずさ

一般型の動的配列はCやってきた奴はalloc使いたがるつーかallocしか知らんけど
C++ならnewだわな

845 :
動的配列は普通vector使うだろう

846 :
vectorは配列やクラスインスタンスには使うけど
一般型でvectorは使わんな

847 :
QtCreator使いにくいからVSで開発したいのに環境構築で詰む

848 :
QtCreatorってファイルが増えるとエディタが物凄く遅くなるんだけど、
回避方法あるのかしら?

849 :
4000個ぐらいのファイル数のプロジェクトを作ってるけど別に遅くないよ。

qmakeの実行は時間かかるけどこりゃあしゃあない。

850 :
>>848
とりあえず最新の4.8.0に更新してみたら? あとVisualize white space が有効だと遅くなるとか見た記憶が

851 :
>>849
>>850
ありがとう
最新版の QtCreator を使って様子を見てみます
Visualize white space も無効にします

852 :
この2019年においてSTLとQtコンテナどっちを使うべき?

853 :
ものによるとしか言いようがない。
Qtの範囲で使うだけならQtで作ればいいし、
Qt以外の世界でも使いたいならSTLで作ればいい。

854 :
コンテナだけのためにQt採用はさすがにやり過ぎだわな

移植範囲もQtが使える環境前提であればQtのコンテナ使えば良いし、
Qt自体、STL版は性能面に於いても勧めていない

855 :
GUI部分だけQtを使うってのは少数派なんですかね

856 :
普通では

857 :
暗号クラス作ってくれんかな
しょぼいハッシュ計算だけじゃなくてAESと公開鍵暗号がほしい
CryptoPPやBotan使えばいいんだけど

858 :
TrippleDES程度なら無かったか?
悪い記憶が曖昧、実装した記憶はあるんだが、俺が自分で作ったのかな?

859 :
暗号ライブラリは調査機関の認証を得ないと意味ないから個人が趣味で作ったのではなくQt Projectとしてやってほしい

860 :
暗号化ライブラリそのものはないっぽいけど、SSLで暗号通信するモジュールはNetworkにあるっぽいよ。

861 :
>>860
それopenssl必要じゃないか?

862 :
http://doc.qt.io/qt-5/ssl.html

863 :
暗号化とかでもQtのライブラリ使うものなの?

864 :
>>861 さんのいう通り OpenSSL を呼び出すだけ

865 :
認証機関で認証されてないけど去年話題になったgoogle製のtinkあたりでもいいだろ。

866 :
その辺のQtラッパーを作ってくれると楽でいいや
QByteArrayを直接突っ込みたい

867 :
需要無し
メリット無し
くだらない

868 :
そうか
せっかくネットワーク回り整ってるのに暗号がないのだけが残念と思ってただけだ

869 :
http://blog.qt.io/blog/2019/01/25/introducing-qt-http-server/
Qtが公式でhttp server出すのか
WebAssembly対応も進んでるっぽいからフロントエンドとバックエンド両方をQtで書けるとなると意外に需要があるのか?

870 :
認証機関とか意味なさ過ぎて草
確信が欲しければ自分で実装見ればいいだろ

871 :
ぼくのつくったさいきょうの認証機関(キリっ

872 :
意味がないとか、客先相手したことないの?
(と思ったオレもその手の案件はないけども)

873 :
すいません質問よろしいでしょうか?
QMLのGridViewに画像を挿入したとき自動的に描画されなくて困っています
スクロールして一旦画面外に出せば描画されるのですがQAbstractListModelに挿入したら即座に再描画させるにはどうすればよいでしょうか?
ちなみにデータはリアルタイムで追加されたり変更されたりします

874 :
QMLって画面は凝れるけど使い勝手が悪すぎる

875 :
ほんそれ

876 :
QMLはあんまり触れてないけど、SIGNAL/SLOTに相当する機能あるんじゃないの?(update とか)

明示的にSIGNAL発行しないと更新されないのであれば、
それはそれでお粗末な仕様だけども

877 :
公式のサンプルはちゃんと確認した?

878 :
こっちで良いか
https://qiita.com/inoory/items/f431c581332c8d500a3b

879 :
QtってC#とかより面白よな。なんでもっと売れないんだろう。

やっぱ、何の社会でも金がものを言うなw

880 :
なんか日本ではプログラムはオタク系のものになってて
本も全部そういう思考で書かれてる。

元々プログラムもセンスある人がトップに入れるものなんだろうけど、
日本はそういう人いないみたいだね。

入門Qt4みたいなセンスがあり、本来のプログラミングの楽しさも味わえる本が日本でも
出てくるといいね。

881 :
高い金だして、文系の書いたような本ばっか買って、アホミタイ

882 :
(ノ∀`)

883 :
Qtの関数は、時々ヤバい不具合の起爆剤になってるから
便利だからと言って過信できない点が怖い

884 :
Qtつまらないよ
Linuxだと他にまともな選択肢がない

885 :
GUIツールキットはつまらなくていい。
変な動作をされるよりは。

886 :
変な動作するんだが

887 :
気にいらないなら使わなければいいだけ

888 :
>>879
ライセンスで失敗してるんじゃね

889 :
>>884
Tcl/Tkが良い

890 :
QML使いだしたけどちょっとしたオブジェクトの生成も別ファイル用意するか文字列の引数でコード渡すのか
もっとサクッとできないものか

891 :
>>869
golang勉強しようかと思ってたがもしかしてC++で事足りるのかな?

892 :
wtとtreefrogのどちらがよいでしょうか?
LAN内のPCからのみ動画を閲覧できるwebサービスを作る予定です

893 :
すみませんスレチでしたm(_ _)m

894 :
QMLを使ってiOSで動かしてるんだけどスクロールがガクガク何だがどうしてだろう
QMLの描画エンジンのフレームレートを制御する方法ってあるかな?

895 :
元々QMLはJavaScriptで動くのが基本なので遅い。
さらにiOSはJavaScriptのJITが無効なのでなおさら遅い。

解決策としてはQMLをネイティブコンパイルする。

896 :
QMLの遅さの原因はそこだけじゃない
構造そのものがおかしい

897 :
>>895
結構マシになった気がする
ありがとう

898 :
Qtでまともなモバイルアプリ作れるんですか?

899 :
まともな定義とはなんぞ

モバイルアプリって範疇なら組込みLinux / Windows も含まれるよな
まぁLinuxデスクトップ相当のUIならそのままAndroid/iOSでもほぼそのままで動くけども

900 :
>>898
作れるけどそれぞれネイティブで作った方が早いんじゃないの?って気になってくる

901 :
速度の話をすればQt使わない方がもちろん速いけどね

902 :
iOSはともかくとして、鈍重なAndroid SDKをバイパスして
Skiaに直結できるQt 製アプリのほうが高速な可能性まであるぞ。
まあライセンスの問題はどうにもならないけどね。

903 :
Qtのスマポってvoid使えないんだな
全部Qtで統一してきたのにそこだけstd:shared_ptrになって不格好

904 :
void ポインタ使うのが不格好なのでは?
あまりにも型変換が自由すぎる

905 :
そもそもQtほど型・インターフェイス継承きっちりやってるライブラリもないのに、
型無視してスマートポインタを使ったら片手落ちだろ。
自動破棄できなくないか。

906 :
>>873
QAbstractListModelを使えばデータが変わればGridViewに自動的に描画される。
QAbstractListModelを継承したクラスの実装が間違っていてデータ変更をシグナルで通知していないからだ。

907 :
c++20でc++11並に機能が強化されるし最早gui部分以外にqt使いたくないよ

908 :
で?
したけりゃやればいいじゃん

909 :
Qt7ではRustに置き換えよう

910 :
みんなエラー処理はシグナル?普通にthrow?

911 :
戻り値

912 :
>>911
C++使う意味がなくなるやん

913 :
c++の例外だけ使ってんの?

914 :
プログラム内で呼んだ関数の戻り値一切テストしないプログラムとか書く方が難しそう

915 :
例外の難点は想定しうるエラーを把握しにくい点だな。

916 :
いちいち戻り値を検証するより例外を投げた方がパフォーマンスは良い
バイナリサイズやメモリ容量の制限が厳しい環境でなければバンバン投げるべき

917 :
Qt自体がほぼ例外使ってなくね?

918 :
使ってないね
使ってたら死ぬほど使いにくいものになってただろうな

919 :
Qtは古いコンパイラや組み込み向け環境にも対応しているから
Q_COMPILER_NOEXCEPT オプションがある。

このフラグは手で設定するものではなく通常Qtのビルド時に
コンパイラのバージョンから自動認識されるものだが手で設定することもできる。

920 :
動画を表示するにはQImageをタイミングよく切り替えるといったものが紹介されているのをよく見ます
私が勝手に動画を表示するにはOpenGLと思い込んでいたのですがQImageでもパフォーマンスに問題は無いのですか?

921 :
デコードのタイミングでGPUを使う手段があるのであって、
そのデコード結果の画像を表示する際に、QImage を使ってるのでは

OpenGLで画像を貼り付けることも可能だろうけど、
そのためだけにそれを使うメリットは門外漢なので思い浮かばない

922 :
パフォーマンスに問題ありありやろね
知らんけど

923 :
もはや難癖ありきのただの妄想やん

924 :
インストールの話なんですが、PythonからQtを使う場合と、C++から使う場合では
インストールするQtは、Python版、C++版をインストールする必要がありますか?

925 :
まずOSは何かくらい書けよ

926 :
え?
OSによっては一度のインストールで済んだり、別々にインストールする必要があったりするんですか?

927 :
不親切な対応と思って質問返ししてるのだろうけど、実際必要な情報なんだよ

928 :
ついでに言うと目的によっても分岐するけどな

929 :
つか試したら終わりだろ

930 :
チュートリアルに書いてあるよね

931 :
超久しぶりにインストールしたら、qt 3d studioなるものがインストール欄にあったけど、なんなのこれ?
ソフト開発したら、どういう風に使えるものなの?

932 :
>>931
https://blog.qt.io/jp/2018/04/11/qt-3d-studio-1-1-released/

933 :
>>932
サークルKサンクス

934 :
質問させていただきます。

ソースコードは長いので、内容を説明させていただきます。

std::threadを使って、重い計算処理を分割して実行し、最後に結果をまとめるということをしています。
通常、実行には6秒くらいかかるのですが、各スレッドから呼ばれるfuncという関数内で
qDebug()を入れて適当な文字を出力すると、0.7秒で完了します。
スレッド数はどちらも8でかわりありませんし、そのほかのソースコードは何一つ変えていません。

qDebugを入れることで何かコンパイルの条件等が変わるのでしょうか。

Qt5.11です。

935 :
Qtはオブジェクトの寿命を独自で管理してるから、std::thread
じゃなくてQt::concurrentを使ってくれないか。

936 :
なんでそんな「ホモ以外は帰ってくれないか」みたいな言い回しなんだ・・

937 :
qDebugは変なコード(localeと合わないエンコードとか)送出すると
コンソール上で異常発生してプログラム終了するときがあるから
デバッグしようとしてそれが原因で目的よりも前のところで落ちる
全然デバッグにならないよω

938 :
ツールバーをカスタマイズするダイアログってどっかに転がってない?

939 :
ラムダ式にconnectするのってラムダ式のスコープ外れたらラムダ式ごとコネクションも消えるのかと思ったら残るんだな
非同期難しいわ

940 :
何でもQObject継承させて親子関係の連鎖で管理するのとスマートポインタ使うのだとどっちが効率いいんだろう?
とりあえずシグナルを使うクラスだけQObject派生にしてるんだけど

941 :
QtならQObjectが自然

942 :
Qt Solutionsって公式?

943 :
すまんどう見ても公式だった

944 :
アプリの中でキリル文字(ロシア語)が全角文字で表示されてしまう問題があるんだけど、
どうやったら回避できるか知ってる人居ない?

945 :
>>944
日本語フォントを使ってるんじゃない? キリル文字を表示できる欧文フォントに変更すれば解決できるはず

946 :
>>945
自動生成される ui_**.h を見る限り、フォントが指定されているように見えない。
海外版のWindowsだと問題ないのかなあ?

947 :
甘えん坊かよ
指定してなかったら指定しろよ

948 :
プログラムは、書いた通りにしか動かない

949 :
VB6 から Qt に移行したら、ビルドの遅さに四苦八苦・・・
でも、ccache を導入したら、かなり快適になったで〜

950 :
【出資】松本卓朗 人工知能詐欺【注意】
https://rio2016.2ch.sc/test/read.cgi/rikei/1560859403/

951 :
【IT】青梅市のHP開発委託で驚きの記述「CMSにオープンソース(PHP・js・CSS・Linuxなど)を使用するな」「機能追加を無料で行え」
https://asahi.2ch.sc/test/read.cgi/newsplus/1561784504/

青梅市ホームページシステム再構築業務委託仕様書のCMSの項目に目を疑う記述。
「なお、オープンソースの使用は認めない」
https://www.city.ome.tokyo.jp/keiyaku/documents/homepageshiyousyo.pdf

952 :
基地害だな

953 :
あるページを見ていて

/// アイコン ダブルクリック時のメッセージ表示動作シグナル/スロット接続
connect(this, &QSystemTrayIcon::activated,
[this](QSystemTrayIcon::ActivationReason reason){
if (reason == QSystemTrayIcon::DoubleClick) {
Message();
}
}
);
という部分があります。で、connectの3番めと4番目の引数の所の[this]以降が自分が理解できません。

https://qiita.com/sazus/items/88daf4949cac06529f88 
↑のページです。

どの様なキーワードでググれば答えが見つかるでしょうか?キーワードさえ教えていただければ
後は自分でググッて調べますので。

よろしくお願いします。

954 :
QSystemTrayIconがアクティブになった理由がダブルクリックされたというからということはもちろん分かります。

[this]の部分とその後のJavaの内部クラスみたいな書き方の名称がわかりません。

955 :
ああ、ラムダ式っていうやつですね。
https://cpprefjp.github.io/lang/cpp11/lambda_expressions.html
↑この辺読んだらなんとなく分かりました。

どうもありがとうございました。

956 :
[this](〜){
:
}
はthisが示すオブジェクトにアクセス可能なラムダ式を引数にしてるってことだと思う

C++ ラムダ式

とかで検索すれば出てくると思う
Qt特有の何かってわけではない

957 :
それはラムダ式だよ。
要するに他の言語でも存在する無名関数を定義してるだけ。

Qt4だと名前ベースのconnectしかできなかったけど、
Qt5からはラムダ式含む識別子ベースのconnectができるようになった。

958 :
この拡張のおかげで以前は滅多に使わなかったラムダ式を多用するようになったわ

959 :
ラムダ式とアミダくじてなんか語感が似てるよね

960 :
阿弥陀式
ラムダ籤
ニダ
https://news.nifty.com/article/domestic/government/12274-325931/
https://www.sankei.com/politics/news/190701/plt1907010046-n1.html
https://www.sankei.com/world/news/190702/wor1907020038-n1.html

961 :
FM-R50Λ(ラムダ)が何だって?

962 :
FakeVimってカーソルを行末+1文字まで持っていったり(set virtualedit=onemore)、
行末で右に移動したら次の行の先頭に移動するような設定ってできない?

963 :
>>956
なんとなくわかります。どうもありがとうございました。

>>957
Qt5からはラムダ式を含む式をconnectに含める事ができるようになったのですね。
どうもありがとうございます。ラムダ式って要するに無名関数なのですね。ありがとうございます。

お二人、遅くなりましたが、ご回答どうもありがとうございました。

964 :
>>959
宝くじもにてるよ。俺は4と9の数と関連があるのが、来るような気がしてますが、
サマージャンボは番号選べないからね。。。

965 :
ボタン(ウィジェット)からマウスカーソルが離れた時を検知するにはどうすればいいですか?
QHoverEventあたりではないかと考えています。

966 :
ドキュメントに書いてある

967 :
Windowsのと比べて使い勝手悪いけど、特定のウィジェットのイベント発生をログに書き出すことができるよ。

968 :
enterEvent、leaveEventだと思うけど、
見た目を変える程度ならスタイルシートでやるのが簡単だよ

969 :
Qt って GTK の仮想端末ウィジェット Vte に相当するウィジェットってあるのですか?

970 :
Vteがどこまで機能を提供してるか知らんが

シリアル通信用のQTerminalというのがあるが、
それをQText*系の汎用的なテキスト表示用Widgetに張り付ける

gnome-editor みたいな自身のファイルシステムを操作するような widget を求めてるなら、
コマンド入力を編集として受け付けて、enter 入力イベント拾ったら、そのままコマンドとして実行、
その結果のテキストを張り付けるだけ

チュートリアルでありそうなレベル
(公式はなかったと思うけど、lxqt の標準端末の qterminal ならある)

971 :
なるほど、QTerminal ですか。近そうな感じです。

私が GTK で実現しているのは、小さな仮想端末の窓を含んだアプリです。
アプリは単なる計算プログラムのフロントエンドで、引数を付けてプログラムを Vte に投げます。
すると、計算プログラムが逐次に標準出力に出す経過が、リアルタイムで窓に表示される。
リアルタイムでなければ、終わってからで良いなら、 TextView ウィジェットでも可能です。
でも、計算によっては数分かかるケースもあるので、進行状況が分かるリアルタイムにしたいのです。
そうなると、 Vte しかないと思うのです。

こんなのが Qt でも実現できるのか、が知りたかった。もしできるなら書き変えたいと思ってます。
普段はUNIX系で GTK で問題ないのですが、Windows に持って行けなくて困まります。
Qt ならそのあたりにアドバンテージがあるかなぁと。

972 :
前者の qterminal は QSerial だった

つか、単純にその機能の実現であればただの pipe だし
ツールキット使わなくてもできる(使ってもできる)

973 :
Qt for MCUs Qt Announces support for Microcontrollers
https://www.cnx-software.com/2019/08/22/qt-for-mcus-qt-announces-support-for-microcontrollers/

974 :
自分専用の動画プレイヤーが欲しくてQMediaPlayer使って作ってみた
Windows上では普通に動画ファイルを再生できるプレイヤーができたんだけど
何も考えずAndroidに持って行ったら同じ動画ファイルを再生できない
というか再生時間は取得できているようでQMediaPlayerに連動させたQSliderは動くんだが、画面が表示されない

まあWindowsでもコーデックをインストールしていない場合によくある動きだが
そこまで簡単に何でもできると思うのは虫が良かったという話であった

975 :
windows以外はとにかくお膳立ての連続だからね

976 :
QMediaPlayer自体はデコードしてないから

977 :
最近これ知ったんだけど結局windowsとMacとLinuxで動くアプリ作りたいならこれ使っとけばいいの?
.netCoreってのとはどう違うの?

978 :
> これ使っとけばいいの?
そうだよ

> .netCoreってのとはどう違うの?
なんの関係もねえよ

979 :
>>977
ネイティブバイナリとバイトコードって違いはあるな

980 :
.NETはWindows以外だとまたもなGUIなくね?
まあQtだってスマフォOS周りは発展途上だと思うけど

981 :
htmlが最強

982 :
これ以上FirefoxOSをいじめないでやってくれ

983 :
これ以上息子を虐めんでくれ

984 :
WindowsでQt Creator 4.8.4を使ていますが、
qDebug()した内容が、Qt CreatorのIDE上では見れないのでしょうか?

985 :
>>984
普通に見れない?
ウィンドウ→出力ペイン→アプリケーション出力
QT_NO_DEBUG_OUTPUT が定義されている?

986 :
さっそくproファイルに、
>DEFINES -= QT_NO_DEBUG_OUTPUT
を書いてリビルドしたら、
アプリケーション出力に出るようになりました。
ありがとうございました。

987 :
初Ubuntsu
軽いって評判だから入れてみたら動きがくそ遅いんですけど
使用感すごいもっさり
画面動かすだけでことごとくティザリング出る
なにこの有様

988 :
まちがえた

989 :
グラフィックドライバがクソ
GNOMEがクソ
PCがクソ
好きな理由を選べ
ちなみに俺はGNOMEを捨てたらサクサクになった
あとGUIの表示に関してはWin、Macの方が圧倒的に軽い

990 :
ドライバやろね

991 :
MLではポインタの*を型と変数名どっちにつけるか戦争が勃発してるようだな…

992 :
間を取って type * p で

993 :
ちなみにわしは型につける派閥やが、だからといって変数名につけるのがクソとかおもわない
こんなのヤキトリの塩味派かタレ派かレベルの違いしかないだろうに
なんでそこまでの戦争になるのか・・人間の業は深い

994 :
(*)

995 :
(*)

996 :
次スレ
【Win/Mac/Linux/Android/iOS】 Qt 総合スレ 19
http://mevius.2ch.sc/test/read.cgi/tech/1571891527/

997 :
        まもなくここは 乂1000取り合戦場乂 となります。

      \∧_ヘ     / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ,,、,、,,, / \〇ノゝ∩ < 1000取り合戦、いくぞゴルァ!!       ,,、,、,,,
    /三√ ゚Д゚) /   \____________  ,,、,、,,,
     /三/| ゚U゚|\      ,,、,、,,,                       ,,、,、,,,
 ,,、,、,,, U (:::::::::::)  ,,、,、,,,         \オーーーーーーーッ!!/
      //三/|三|\     ∧_∧∧_∧ ∧_∧∧_∧∧_∧∧_∧
      ∪  ∪       (    )    (     )   (    )    )
 ,,、,、,,,       ,,、,、,,,  ∧_∧∧_∧∧_∧ ∧_∧∧_∧∧_∧∧_∧
      ,,、,、,,,       (    )    (    )    (    )    (    )

998 :
半日以上レスつかない過疎スレ

999 :
ここはあえて999を頂戴するぜ

1000 :
【Win/Mac/Linux/Android/iOS】 Qt 総合スレ 19
http://mevius.2ch.sc/test/read.cgi/tech/1571891527/

1001 :
2ch.scからのレス数が1000に到達しました。

1002 :
2ch.scからのレス数が1000に到達しました。

[無料でラクラクJava帳票作成] JasperReports使い集合
sizeof(char)が必ず1でも、省略すべきではない
くだすれPython(超初心者用) その43【Ruby禁止】
くだすれDelphi(超初心者用)その57
Win32API質問箱 Build126
シェルスクリプト総合 その30
PowerShell -Part 4
スレ立てるまでもない質問はここで 149匹目
JavaScriptは消滅すべきだったよな
【wasm】ブラウザでC++。Emscriptenを語ろう
--------------------
★福岡痛多レイヤースレ 25
【純A】ノーマル総合 Part35【A+RT】
【PSO2】6月のアプデ、スッカスカでワロタ
口コミサイト「エキテン」はクソサイト!
【通信教育】Z会・Z会小学生コース【スタンダード・ハイレベル・タブレット】
[FRPボート] スモールボートでの釣り 12隻目[ゴムボート]
■■浦和学院野球部応援スレ Part128■■
【鬱病】死にたい同人者【うつ病】
×有頂天を知っていますか?僕らはみんな13がない×
【芸能】田村淳、ロンブー復活会見で光った“社長”の顔 亮への好アシスト連発
関東気象情報 Part775【2018/8/24〜】
BuzzVideo 40
【山口敬之/準強姦揉み消し問題】日本の#MeToo道半ば、伊藤詩織さんが現状語る【北村滋/中村格】[03/17]
【サミー】CR聖戦士ダンバイン Part98
【ガルパ】BanG Dream! ガールズバンドパーティ!★1348【バンドリ】
B85W60H90、「壮絶のリカ」がグラドルデビュー「ひたすらエッチ」
ファッションコーディネートアプリ “WEAR” 総合70
【設立】LoV LORD of VERMILION ギルドスレ【結成】
【バーチャル】hololiveアンチスレ#4557【youtuber】
【ようはここの所を】愛の貧乏脱出大作戦10【取れって言うんだろ】
TOP カテ一覧 スレ一覧 100〜終まで 2ch元 削除依頼