[過去ログ] GTK+プログラミング (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
771(6): 2014/05/24(土)00:08 ID:jA6HOcWn(1) AAS
gtkmmでProgressBarの描画更新はどうやったらええねん
set_fractionしても途中を描画してくれない
773(1): 771 2014/05/24(土)09:12 ID:ESO9FbEd(1/2) AAS
>>772
それアクティビティモードというのと違う?
ナイトライダーをしたいわけではないんよ・・・
774(1): 2014/05/24(土)12:34 ID:3aXipg2f(2/5) AAS
>>771,773
set_fraction() で、その都度増分を変えて、すぐ更新したいってこと?
queue_draw() で、PrograssBar の on_draw イベントを呼んでみたら?
775: 771 2014/05/24(土)14:58 ID:ESO9FbEd(2/2) AAS
>>774
はい、その通りです。お付き合い頂き有り難う御座います。
queue_draw()を試してみましたが、表示のされ方は変わりませんでした。
試したコードを貼り付けようとしたのですが、行数の制限で書けませんでしたので、部分的に書き込みます。
ググって見ているのですが・・・何かお気づきの点がありましたらよろしくお願い致します。
プログレスバーとボタンを配置し、ボタンが押された時に動くようにしました。
drawBtn.signal_clicked().connect( sigc::mem_fun( *this, &ProgressWindow::on_draw_prog ) );
void ProgressWindow::on_draw_prog() {
progBar.set_fraction( 0.0 );
for( int i=0; i<100; i++ ) {
省6
778: 771 2014/05/24(土)22:15 ID:SrMGc3rQ(1/2) AAS
>>776
コードまで書いて頂き有り難う御座います。
コンパイルして動作を見ましたら、進捗状況の変化を確認できました。
しかしながらon_button_update内で下記コードのようなループを回しset_fractionするようにしてみましたら
相変わらず最後の表示だけするようです。実際の処理ではループを回して進捗状況をset_fractionします。
む〜もう少しネットをあさってみます。
void ExampleWindow::on_button_update()
{
m_ProgressBar.set_fraction( 0.0 );
for( int i=0; i<100; i++ ) {
省5
779: 771 2014/05/24(土)23:11 ID:SrMGc3rQ(2/2) AAS
なんかそれっぽい動きになったけどこれでいいのかね・・・イベント強制執行みたいな
[変更前]
m_ProgressBar.queue_draw();
sleep( 1 );
[変更後]
usleep( 50000 );
while( Gtk::Main::events_pending() ) Gtk::Main::iteration( true );
781: 771 2014/05/25(日)10:38 ID:OwNsCCvJ(1) AAS
タイマーか〜処理がスパゲッティーになりかけているから使いづらいんだよね
アクティビティモードの時は使いやすそう。
今少し弄っているんだけど、set_pulse_stepでステップ量設定しても反映されないな
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.983s*