17

私は2つの数字(好き嫌い)の比率を作ろうとしています。

結果はパーセント単位の数値です。次に、ラベルからの幅をそのパーセントに等しくしたいと思います。

つまり、100のいいねと1つの嫌いがある場合。嫌いなラベルをいいねバーの幅の1%にしたい。つまり、基本的にはYouTubeの評価システムのようです。

画像の例: ここに画像の説明を入力してください

しかし、ラベルの幅を設定する関数はありません。だから私はこれをどのように行う必要がありますか、誰かが提案を持っていますか?

4

4 に答える 4

30

QLabel::setFixedWidth(int)。より柔軟にするために(レイアウトの変更について心配する必要はありません)、サブクラス化QWidgetし、2つの数値用のスロットを追加し、再実装paintEvent(..)して2つのセクションを描画します。

于 2012-10-11T14:06:04.390 に答える
1

うーん、私はただresize()メソッドを使用しています。たとえば、QLabelから実装された私のウィジェット:

BenchItem *itm=static_cast<BenchItem*>(widget); itm->resize(this->width(),itm->height());

高さを変更する必要がないので、それ自体が高さを使用しますが、親のwidth()のために幅を変更する必要があります。

于 2016-08-12T08:01:14.327 に答える
1

setGeometry()メソッドを使用して、QLabelの幅を動的に設定しました。フォームUiにqlabelがあります。

ui->qlabel->setGeometry(x, y, width, height);
于 2017-07-16T16:12:15.853 に答える
0

QTドキュメントを見ると、この要素には次のものしか含めることができません

「プレーンテキスト、リッチテキスト、ピックスマップ、映画、数字、または何もない」

これらの中で最も有望な「ピックスマップ」には、必要な画像操作機能がないようですが、代わりに画像の表示について説明します。

http://qt-project.org/doc/qt-4.8/qpixmap.html

代わりに、CSSのように、棒グラフの問題に対してより軽量なソリューションを検討することをお勧めします。2つのdiv要素を使用してこれを行う方法は次のとおりです。

http://www.1080degrees.net/archive/journal/simple_css_bar_graph/

結局のところ画像を表示したい場合で、GDライブラリを有効にしている場合は、おそらくここをご覧ください。

http://php.net/manual/en/function.imagecreate.php

于 2012-10-11T14:11:37.303 に答える