が機能していません。私は既にレイアウトを使用しようとしましたが、動作していません - ボタンはまだ左の枠の隣にあります。ここ コード:私が正しいかではない、それを行う場合Qtのレイアウトは、私は私のアプリでは、ウィンドウの右端にあるボタンを整列する
MainWindow::MainWindow()
{
this->setStyleSheet(
"QMenu {background-color: #555555; color: #EEEEEE; selection-background-color: #222222; border: 1px solid #222222;}"
"QMenuBar {background-color: #555555; color: #EEEEEE;}"
"QMenuBar::Item:selected {background-color: #333333; color:#EEEEEE;}"
"QMenuBar::Item:pressed {background-color: #111111;}"
"QToolBar {background: #555555; border-top: 1px solid #222222;}"
"MainWindow {background: black;}"
"QToolButton { background-color: transparent; border: none; }"
);
initButtons();
}
void MainWindow::initButtons()
{
QPushButton *playButton = new QPushButton(this);
playButton->setAutoFillBackground(true);
playButton->setStyleSheet("background-color: rgb(40, 40, 40);");
playButton->setToolTip("Play");
this->layout()->addWidget(playButton);
this->layout()->setAlignment(playButton, Qt::AlignRight);
}
誰かが私に言うことはできますか?なぜそれは働いていないのですか?
何レイアウトを設定しましたか? "このウィジェットにインストールされているレイアウトマネージャを返します。レイアウトマネージャがインストールされていない場合は0を返します。" –
(http://doc.qt.io/qt-5/qwidget.html#layoutから)私は、任意のレイアウトを追加されませんでした。新しいレイアウトを追加しようとすると、 "レイアウトを既に持っているMainWindow" "にQLayoutを追加しようとしています"と言われていますので、すでにレイアウトがあると信じています。 –
人々は何をやっている推測する必要はありませんので、あなたのコード例は、完全に問題のコンテキストを提供する必要があります(たとえば、あなたが 'QMainWindow'と直接作業している知って、整数です)。私は 'Qt'を使用しましたが、私はあなたがメインウィンドウの中央ウィジェットとして設定し、あなたのように構成レイアウトでウィジェットを作成すると信じているので –