問題タブ [qt5.6]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
3845 参照

qt - defaultServiceProvider::requestService(): "org.qt-project.qt.camera" のサービスが見つかりません

Ubuntu、Qt 5.6 で QCamera の例を実行しようとしています。「カメラ サービスが見つかりません」というメッセージが表示されます。

0 投票する
1 に答える
58 参照

c++ - QWidget フレーミング

ウィジェットの座標系がウィジェットに対してローカルであることを理解しています。0,0 左上。

ウィジェットにフレームを描画したいのですが、rect() によって返される QRect を使用すると、右と下がフレーム化されません。

「frameGeometry()」というメソッドがありますが、これはウィジェットと同じ座標系ではなく、親の座標系にある QRect を返します。

ローカル座標系でウィジェットのフレーミング長方形を取得する方法はありますか?

frameGeometry() を変換するか、単純に新しい四角形を作成できることはわかっています。

これは適切なことですか?

0 投票する
1 に答える
1534 参照

c++ - QTableView にドロップ インジケーターが表示されないのはなぜですか?

私はQTableView(作品)でドラッグアンドドロップを使用しています。ただし、ドロップ インジケーターは表示されません。ドロップが挿入されるはずの行が表示されるはずですよね? 少なくともここではそう言っています。

私の初期化はかなり標準的です。

インジケーターが表示されない理由がわかりません。ビューでスタイルシートが使用されているため、それが原因である可能性があります。ただし、スタイルシートを無効にしましたが、まだ表示されません。

ビューは選択に行全体を使用しますが、これが問題を引き起こすかどうかはわかりません。したがって、ヒントをいただければ幸いです。

- 編集 -

以下のコメントの時点で、すべての選択モードを試しました: シングル、マルチ、または拡張、視覚効果なし。行選択の代わりにセルも試しましたが、やはり改善されませんでした。

-- 編集 2 --

現在、以下のような別のスタイルのプロキシの例を評価しています。元はここで参照されていました

- 関連している -

QTreeView ドロー ドロップ インジケーター QTableWidget
でマウス ホバー時に行全体を強調表示する方法: Qt5
https://forum.qt.io/topic/12794/mousehover-entire-row-selection-in-qtableview/7
https://stackoverflow. com/a/23111484/356726

0 投票する
1 に答える
1319 参照

qt - QToolBar要素のマウスホバーでQAction Qtのアイコンを変更するにはどうすればよいですか?

QToolBar にいくつかの QActions があります。QAction にはスタイルシートがないため、マウス ホバー時に QAction アイコンを変更しようとしています。マウスホバーでQActionアイコンを変更するにはどうすればよいですか

0 投票する
0 に答える
340 参照

android - AndroidでTextAreaを使用するには?

コントロールを使用して、編集可能なテキストを含む基本的なページを作成しようとしていますTextArea。デスクトップ (Windows) ではすべて正常に動作しますが、Android にはいくつかの問題があります。

Q5.6/windows mingw. android-23 ビルド、最小 API 16/ターゲット 23 (Android 6.0)

問題は次のとおりです。

  1. サブクラス化するTextAreaStyleと、Androidが壊れます。選択ハンドルが消えます (他の奇妙さの中で)。

  2. リッチ テキストを使用すると、onLinkActivated. デスクトップで問題なく動作します。少しスクロールすると、リンクの下線も消えます。

  3. Android にはカット アンド ペーストのポップアップはありません。これはすでに QT バグとして投稿されているのを見ました。これに関する進捗状況、または回避策はありますか。Qt5.4 の回避策を見てきましたが、これは 5.6 では機能しません。

main.qml:

単純なテキストのページを取得するためだけに、このすべての問題と戦っています。

要点コード、https://gist.github.com/anonymous/e5a9e9751e10db22695e2643e8191292

助けと提案をありがとう。

0 投票する
0 に答える
166 参照

c++ - Qt 5.6 でのマウス イベントまたは位置の問題

Windows 用の Qt アプリケーションで非常に奇妙な UI の問題が発生しました。Qt 5.3.1 から 5.6.0 にアップグレードして以来、一部のウィジェットは、親 (QDialog、QWizard、または単に QSplitter) のサイズを変更するまでクリックできなくなりました。これには、QPushButtons、QRadioButtons、QCheckBoxes などが含まれます。奇妙なのは、これが私のマシンと他の 1 つの開発者のマシンでのみ発生することです。他のすべての開発者にはこの問題は発生しません。複数のバージョンの Qt がインストールされていること (私は 4.8.、5.3.1、および 5.6.0 を持っています) と関係があるのではないかと考えていましたが、それはありそうにありません (さらに、他のすべての開発者も複数のバージョンを持っています)。Windows 7 で VisualStudio 2015 を使用しています。

問題を 100% 再現する小さなコードをいくつか添付しましたが、他のマシンではそうかもしれないし、そうでないかもしれません。私に何が起こるかというと、「クリック」ボタンをクリックして QWizard がポップアップすると、「キャンセル」ボタンをクリックできません (また、有効にすると「完了」ボタンもクリックできません) - マウスイベントが登録されていないようです全て。ただし、右上の X をクリックすることはできます。QWizard のサイズを任意の方向に変更すると、[キャンセル] ボタンをクリックできます。

考えられる手がかりは、この問題がある QDialogs では、QComboBoxes も奇妙な動作をすることです - ポップアップ ビューが奇妙な位置に表示されます (下のスクリーンショット)。繰り返しますが、親のサイズを変更すると、ポップアップ ビューが予想される場所に表示されます。これは、位置または親オブジェクトがどこかに正しく設定されていない (相対位置) という問題を示している可能性がありますが、どこから始めればよいかわかりません。

添付の例を使用して、次のいずれかでウィザードページを追加すると、何らかの形で親の設定に関連しているようです。

また

コンボボックスのポップアップ ビューを次のようにします。 キャプチャー2

使用中:

次のようになります。 ここに画像の説明を入力

ただし、根本的な原因が何であるかはまだわかりません。ファイルは以下に添付されています。

ソースファイルとヘッダー

0 投票する
1 に答える
635 参照

c++ - QFontMetrics boundingRect

QFontMetrics の「boundingRect」関数に問題があり、正しい結果が返されません。

デバッガーでは、rctLine には以下が含まれます。

これは非常に紛らわしいです。参照位置が渡されないため、x1 と y1 の両方が 0 であると予想し、x2 と y2 の両方が正であると予想します。

返された四角形は正しくありません。drawText と配置で使用すると、文字列の一部が表示されなくなります。

この関数が間違った結果を返す方法に関する他の投稿があることは知っていますが、これらを見てみましたが、役に立ちませんでした。

RedHat 7.2 で Qt5.6 を使用しています。

私も試しました:

pobjParent は親ウィジェットで、rctParent には以下が含まれます。

intAlign には 33 が含まれます (左、上)

この場合、rctLine は以下を返します。

ただし、境界の四角形はまだ小さすぎて、レンダリング時に「S」の一部が欠落しています。

QFontMetrics に関する Qt の公式ドキュメント

0 投票する
1 に答える
1340 参照

qt - スタイルシートの独自のウィジェットを有効にする

スタイルシート用に独自のウィジェット クラスを有効にしたいのですが、これは ではなく、 qsssetStyleSheet(qss)スタイルシートのセレクターです。名前空間の "::" を "--"に置き換える必要があることは理解されています。

ここ (カスタム ウィジェットの Qt スタイルシート) 同様の質問を見つけましたが、それは 4 年以上前のものです。答えに基づいて、いくつかの詳細な質問があります。

a) https://stackoverflow.com/a/8817908/356726から、オーバーライドされた公開されたアプローチはpaintEventまだ有効ですか(Qt5.6/5.7)

b) 同じスレッド ( https://stackoverflow.com/a/22094319/356726 ) で、オーバーライドする必要はないと言われていますpaintEvent。わかりました、私に導きます:b1)paintEventとにかくオーバーライドするのは有害QFrameですか?b2) 他の基本クラスとは何QTableViewですか? QFrameこの特定の役割を持つ理由は何ですか?

c)そのトピックに関する公式の Qt ドキュメントを見つけた人はいますか? a の素敵なコードですが、それはどこから来たのですか? (ここ) 正直なところ、私はそれが何をするのか理解していません。

- 編集 -

paintEventダニエルは、その魔法のスニペットのソースをここ(QWidget段落)で指摘しています。同じ( 「サポートのみ..」)が に対して言われているのは興味深いことです。QDialogこれは、そこでもスニペットを使用する必要があることを意味する可能性があります。デフォルトでそのスニペットをpaintEventofに追加しない理由がわかりません。QWidget

0 投票する
2 に答える
1625 参照

qt - 高 DPI 画面で Qt 5.6 で svg アイコンを再び鮮明にする方法

Qt 5.4 から Qt 5.6 にアップグレードすると、すべての .svg アイコンがぼやけたりピクセル化されたりしました。これは、MacBookPro Retina ディスプレイのような高密度スクリーンでのみ発生することに気付きました。Qt 5.6での高 DPI サポートのドキュメントを読み、QT_AUTO_SCREEN_SCALE_FACTOR=1環境変数を設定しましたが、あまり効果がありませんでした。誰もこの問題を抱えていますか?おそらく私の質問に関連するこのバグレポートも見つけました。

編集1:

簡単な例は次のとおりです。

0 投票する
0 に答える
1040 参照

c++ - Mac OS X の Qt ウィジェット アプリケーションの小さなフォント

私の Qt ウィジェット アプリケーションは、Linux と Windows で正常に動作します。Mac OS X でも動作しますが、すべてのフォントが (Windows/Linux と比較して) はるかに小さく表示されます。

これを適切に調整する最良の方法は何ですか? いくつかの考え:

  1. 同様の印象を得るために使用できる「秘密の」パラメーターはありますか? 同様に、API 経由で QT_AUTO_SCREEN_SCALE_FACTOR の動作を設定できますか? ハイ DPI 用
  2. アプリケーション全体のフォントをグローバルに調整するには、スタイル シートを使用するのが最善の方法ですか?
  3. Windows フォントと Max OS X フォントの比率をどうにか計算して、すべての Windows8ptフォントが12ptMac OS X にある必要があることを確認できますか?
  4. それとも、Mac OS X でフォント ファミリを変更した方がよいでしょうか (Windows / Linux と同じ視覚的印象を与えるフォント ファミリはありますか)。

関連:質問がすでに出されていることは理解していますが、それらはすべて、はるかに古いQtまたはMac OS Xバージョンに言及しています。ということで、あえてその話題を持ち直します。

編集:視覚的な印象

残念ながら完璧なスクリーンショットは手元にありませんが、これがどのように見えるかです。Windows 版と Linux 版はほぼ同じピクセルです。Mac フォントが小さすぎます (MAC OS X 右、Windows 左)。これは、アプリケーション全体で同じです (テーブル ビューなど)。

ウィンドウズ MacOSX

現在、スタイルシートを介してフォントを設定しています。したがって、フォントは8pt、ピクセルサイズではありません。12ptMac OX X で (試行錯誤)に設定すると、ほぼ Windows/Linux に近い表現になります。