問題タブ [qprogressbar]
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.
python - QProgressBar を関数にどのように接続しますか?
私はプログラムに取り組んでおり、QProgressBar を関数に接続したいと考えています。関数が進行中の間、QProgressBar は関数が完了するまでカウントする必要があります。次に、QProgressBar も実行する必要があります。
c++ - QProgressBar の色を変更する
私はubuntu 11.04を実行しています。これは私の進行状況バーがどのように見えるかです:
バッチ処理ウィンドウ (バッチ アイテムごとに 1 つ) にプログレス バーを表示しており、それらをステータス インジケーターとして使用したいと考えています (すべてが順調に進んでいるときは緑、エラーの場合は赤など)。
このほぼ同じ質問に対して行われたものを含め、いくつかの提案を試みました。残念ながら、私はそれを機能させることができませんでしたし、QProgressBars のカスタマイズに関するドキュメントも役に立ちません。
提案どおりに QProgressBar をサブクラス化し、スタイルシートとパレットを使用してみました (同時にではなく、代替手段として)。スタイルシートでは、通常のプログレス バーのように見せることはできません。色を変えることだけが本当にやりたいことなので、スタイルシートの代わりにパレットを使用する方がはるかに簡単だと思いましたが、パレットでは何も起こりません。
パレットで試したバージョンの 1 つを次に示します。
ここで提案されているバージョンも試しましたが、それも役に立ちませんでした。
file - 別のスレッドから QProgressbar を更新する
私は独自のハイブリッド ストリーム暗号を開発し、GUI には Qt を使用しています。最初は単一のスレッドで書きましたが、ストリーム暗号であるため、大きなファイルを操作するときに GUI が機能しなくなりました。そこで、暗号化/復号化を別の Qthread に移しました。また、進行状況を表示するために、標準の QProgressbar を GUI に含めました。しかし、ファイル I/O を実行すると、暗号化/復号化は完全に機能しますが、プログレス バーが正しく更新されません。操作全体が完了すると、進行状況バーが突然 0% から 100% になり、操作中に更新する機会がなかったことを示します。コードでは、完了したパーセンテージを FileCrypto からメイン GUI スレッドの QProgressbar の setValue(int) スロットに出力しました。しなかったから」
これが私のコードです:
FileCrypto クラス:
コード:
これは、スレッドを作成してメインの GUI スレッドに接続する方法です。
プログレスバーを更新しない、つまりパーセンテージを発行しない場合、プロセスははるかに高速に行われます。パーセンテージも印刷してみました。地獄のように遅くなりますが、値は問題ありません。また、バッファリングされたIOに変更する方法を提案できますか....
ここでどんな種類の助けも大歓迎です.......
qt - QListWidget内の不確定なQProgressBar
OPタイトルにあるように、不確定なQProgressBar
indide aを手に入れるチャンスはありますQListWidget
か?
それは私が試したことですが、何も表示されませんか?ヒントはありますか?
ありがとうございました:
編集:長期的な手順の結果を待つ必要があり、QListWidget 内に結果を表示したい
qt - QWizard マルチスレッドで QProgressBar を更新するには?
一部のページではメソッドの呼び出しに時間がかかる QWizard サブクラスがあるため、QProgressBar を配置したいと考えています。私の最初の考えは、QTimer を作成し、updateProgressBar に呼び出されるメソッドをセットアップすることですが、これはウィザードと同じスレッドで実行されるように見えるため、QWizard がビジーでないときにのみ更新されます。これを別のスレッドで実行するにはどうすればよいですか?
python - PyQt プログレスバー
次のコードを使用すると、数秒後にアプリケーションが停止します。そして屋台とは、ハングアップを意味します。待機または強制終了を示すウィンドウが Windows から表示されます。
これは、プログレス バー ウィンドウの内側をクリックした場合、またはウィンドウの外側をクリックした場合にのみ発生するため、フォーカスが失われることを付け加えておきます。例を開始して何も触れないと、正常に動作します。
これを次のように使用します。
助けてくれてありがとう。
qt - プログレスフロントの周りのテキストの色が異なるプログレスバー?
QtからQProgressBarのテキストに対して次の効果を得るにはどうすればよいですか? :
アイデアは、プログレス バーの左側の部分を明るい色にする必要があるということです。
c++ - QProgressBar をロジック層から更新するように設定する適切な方法は何ですか?
ロジックレイヤーのループからビューレイヤーの QProgressBar を更新したい場合 (各反復がプログレスバーを更新するなど)、それを行う適切な方法は何ですか?
ありがとう
multithreading - Qt QtConcurrent プログレスバーの更新
にQTableView
接続していQAbstractTableModel
ます。
モデルはQtConcurrent::map
、アプリケーションのスレッドを作成するために使用されます (ファイルのコピー)
tableviews セルの 1 つにQStyledItemDelegate
a を表示するようにサブクラス化しました。アイデアは、モデルを介して進行状況バーを更新することでした。QStyleOptionProgressBar
動作しますが、一度に 0 から 100% までスムーズではありません。
QAbstractTableModel::setData()
私の「コピーループ」で呼び出されますがQAbstractTableModel::dataChanged()
、ループが終了したときにのみ放出されるようです。私が何をしようと。
これは間違ったアプローチかもしれませんが、スレッドからテーブル ビューの特定の進行状況バーにアクセスする方法がわかりません。
c++ - QProgressBar の読み込みが完了した後の原因不明の遅延
メイン GUI にある進行状況バーの更新をトリガーするループ (いくつかの計算を行う) から信号を発信しました。遅延があり、プログレスバーが100%のままで、マウスがビジーに変わることがあります.数秒後にプログレスバーが非表示になり(遅延が終了したことを示します)、そのループの後に何もないため、何もできませんこの遅れを作ることができると考えています。
- ループ計算が軽い場合 (つまり、多くの計算を実行する必要がない場合)、そのような遅延は発生しないことに注意してください。
エミットシグナルはロジックレイヤーのクラス内にあります。<QtGui/QApplication>
そのクラスに含めることで何かを試しました(これはロジックレイヤーであるため、QtGuiライブラリが必要な理由ですが、私には正しいことではないように思えますが、私は' m は何かをテストするだけです)、次のコードqApp->processEvents();
をループ内に配置すると、スムーズに実行され、マウスがビジー状態になることはありませんが、まだ遅延があります (この遅延が発生している間に GUI で反応できる唯一の違いですが、この遅延が終了するまで結果は更新されません)。
でのテストのため、processEvents()
スレッドに関連するものだと思っていましたが、もしそうなら、どうすれば遅延動作を修正できますか?
サンプルコード:
ロジック層クラス:
レイヤーを表示 (MainWindow):
ありがとう