c++ - pos - Qt-Deshabilitando el botón "?" De QDialog
qwidget pos (3)
Creo una instancia de QDialog y, a la izquierda del botón ''x'' (cerrar), también tengo ''?'' botón. ¿Cómo puedo deshabilitar eso? ?
Cambie las banderas de ventana, por ejemplo en el constructor:
this->setWindowFlags(this->windowFlags() & ~Qt::WindowContextHelpButtonHint);
De la documentación de Qt 4.6 QDialog:
QDialog::QDialog ( QWidget * parent = 0, Qt::WindowFlags f = 0 )
Construye un diálogo con el padre
parent
.Un diálogo es siempre un widget de nivel superior, pero si tiene un padre, su ubicación predeterminada se centra en la parte superior del padre. También compartirá la entrada de la barra de tareas de los padres.
Las
QWidget
widgetf
se pasan al constructorQWidget
. Si, por ejemplo, no desea un botón ** ¿Qué es esto? En la barra de título del cuadro de diálogo **, paseQt::WindowTitleHint | Qt::WindowSystemMenuHint
Qt::WindowTitleHint | Qt::WindowSystemMenuHint
enf
.
Vea también QWidget::setWindowFlags()
.
Si solo desea deshabilitar el botón, puede llamar a setEnabled(bool)
, pero dudo que se pregunte eso.
Si desea eliminar ese botón, vea a continuación:
QDialog
está diseñado para utilizar un QDialogButtonBox
como los botones que aparecen en el cuadro de diálogo. Puede usar los QDialogButtonBox disponibles en QDialogButtonBox para deshabilitar los botones que no desea (así como habilitar otros).
Por ejemplo (de la documentación vinculada a arriba):
findButton = new QPushButton(tr("&Find"));
findButton->setDefault(true);
moreButton = new QPushButton(tr("&More"));
moreButton->setCheckable(true);
moreButton->setAutoDefault(false);
buttonBox = new QDialogButtonBox(Qt::Vertical);
buttonBox->addButton(findButton, QDialogButtonBox::ActionRole);
buttonBox->addButton(moreButton, QDialogButtonBox::ActionRole);
Si no está al tanto del cuadro de botones, supongo que el diseñador lo agregó automáticamente y debería tener un nombre que lo haga accesible. También debe haber propiedades (casillas de verificación) que puede verificar para controlar qué botones son accesibles de forma predeterminada.