0
我正在開發一個使用QT 5.8框架的C++小程序。 它有一個帶有一個標籤的窗口,我想在標籤中繪製一個正弦波。如何在Qlabel中禁用對齊?
正弦波應該從標籤左邊緣的十個像素開始,但是它是根據標籤的對齊參數繪製的。
有沒有可能禁用標籤的對齊參數? 你有沒有類似的問題,你如何解決它?
非常感謝您的幫助和合作 問候
這是我的代碼:
#define SPAZIO_SX 10 // ten pixel from left
#define SPAZIO_BASSO 10 // ten pixel from bottom
void MainWindow::setGraphic()
{
int i;
QPicture pi;
QPainter p(&pi);
int x0,x1,y0,y1;
int yCoord;
yCoord=this->ui->GraphicLabel->geometry().height();
p.setRenderHint(QPainter::Antialiasing);
p.setPen(QPen(Qt::white, 4, Qt::SolidLine,Qt::RoundCap,Qt::RoundJoin));
x0=SPAZIO_SX;
y0=yCoord-SPAZIO_BASSO-pvalMedia->getValue(0); // return value(0-255)
for(i=1;i<512;i=i++) {
y1=yCoord-SPAZIO_BASSO-pvalMedia->getValue(i);
x1=x0+1;
p.drawLine(x0, y0, x1, y1);
y0=y1;
x0=x1;
}
p.end(); //
this->ui->GraphicLabel->setPicture(pi);
}
它並不解決問題。僅舉一個例子:如果函數不是正弦波,而是距離底部30像素的水平線,則垂直對齊(當然如果垂直對齊是AlignVCenter)。如何顯示在第八位? – Ferrari