簡體   English   中英

設計QFrame和QSizeGrip

[英]Design QFrame and QSizeGrip

我創建了一個QFrame並添加了一個包含QSizeGrip的布局來調整QFrame的大小。

這是我的code.pp

DragWidget::DragWidget(QWidget *parent)
    : QFrame(parent)
{
    setFrameStyle(QFrame::Sunken | QFrame::StyledPanel);
    //Set flag to resize
    setWindowFlags(Qt::SubWindow);
    QGridLayout *layout = new QGridLayout(this);
    layout->setContentsMargins(QMargins());
    layout->setSpacing(0);
    //Add size grip (to resize) to layout
    QSizeGrip * sizeGrip = new QSizeGrip(this);
    layout->addWidget(sizeGrip, 0, 0, 1, 1, Qt::AlignBottom | Qt::AlignRight);
}

我想設計QFrame有這樣的背景

在此輸入圖像描述

此外,還有任何方法可以自定義QSizeGrip的圖標大小調整 (使其更清晰......)。

在此輸入圖像描述

您可以使用樣式表自定義QSizeGrip。 這是一個例子: 自定義QSizeGrip

這里是Qt樣式表文檔: Qt樣式表

在您的情況下,您可以添加以下代碼行:

sizeGrip->setStyleSheet("QSizeGrip { image: url(yourFolder/yourImage.png); }");

以類似的方式,您可以自定義QFrame背景,設置將重復的圖像。 請參閱自定義QFrame屬性列表

編輯

另一種方法是QSizeGrip並重新實現paintEvent()方法(可能還有sizeHint()具體取決於圖標大小)。 這是一個模擬時鍾示例

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM