Pregunta

Estoy tratando de aprender cómo crear el diseño de mi aplicación Qt Symbian por lo que ampliará / reducir el tamaño y el ajuste en el tamaño de la pantalla de los diferentes dispositivos.

En mi interfaz de usuario por defecto he añadido una QTabWidget con cinco pestañas que quiero encajar en la pantalla del dispositivo. Tengo dos problemas:

  1. ¿Cómo puedo hacer para reducir el tamaño de las pestañas para ajustarse siempre en la pantalla del dispositivo, o es que no es posible? ¿Qué pasa si un dispositivo tiene una anchura de 240 píxeles y otro una anchura de 400 píxeles. Como se puede ver ahora ( Nokia emulador ) las fichas van fuera del la pantalla. (Y yo no quiero ScrollButtons uso)

  2. Como se puede ver en la parte roja de la imagen ( Nokia emulador ) Hay una cierta distancia en el interfaz de usuario que no quiero. En lugar Quiero que el QTabWidget para llenar toda la pantalla (toda la parte roja).

En resumen estoy aprendiendo en este momento y sería grande si usted podría darme algunos consejos sobre dónde buscar para obtener más información acerca de estos problemas con la construcción de una interfaz de usuario que encaja en muchos dispositivos y resoluciones de pantalla. Gracias!

Este es el código en mi archivo de interfaz de usuario:

void setupUi(QMainWindow *UITest)
{
    if (UITest->objectName().isEmpty())
        UITest->setObjectName(QString::fromUtf8("UITest"));
    UITest->resize(284, 167);
    QSizePolicy sizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
    sizePolicy.setHorizontalStretch(0);
    sizePolicy.setVerticalStretch(0);
    sizePolicy.setHeightForWidth(UITest->sizePolicy().hasHeightForWidth());
    UITest->setSizePolicy(sizePolicy);
    centralwidget = new QWidget(UITest);
    centralwidget->setObjectName(QString::fromUtf8("centralwidget"));
    verticalLayout = new QVBoxLayout(centralwidget);
    verticalLayout->setObjectName(QString::fromUtf8("verticalLayout"));
    tabWidget = new QTabWidget(centralwidget);
    tabWidget->setObjectName(QString::fromUtf8("tabWidget"));
    tabWidget->setTabPosition(QTabWidget::South);
    tabWidget->setUsesScrollButtons(false);
    tab = new QWidget();
    tab->setObjectName(QString::fromUtf8("tab"));
    tabWidget->addTab(tab, QString());
    ...More tabs...        

    verticalLayout->addWidget(tabWidget);

    UITest->setCentralWidget(centralwidget);

    retranslateUi(UITest);

    QMetaObject::connectSlotsByName(UITest);
} // setupUi

void retranslateUi(QMainWindow *UITest)
{
    UITest->setWindowTitle(QApplication::translate("UITest", "UITest", 0, QApplication::UnicodeUTF8));
    UITest->setStyleSheet(QApplication::translate("UITest", "background: red;\n" "padding: 0px;", 0, QApplication::UnicodeUTF8));
    tabWidget->setStyleSheet(QApplication::translate("UITest", "background: white;\n" "margin: 0px;\n" "padding: 0px;", 0, QApplication::UnicodeUTF8));
} // retranslateUi

En main.cpp showMaximized () se utiliza para mostrar mi aparato como yo también quiero que los botones de menú en la parte inferior.

¿Fue útil?

Solución

¿Cómo se muestra el widget? Se sugiere emplear el método showFullScreen mostrarlo -. Eso podría hacerlo

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top