Я работаю на портативном устройстве чтения смарт-карт ACR890.Это устройство имеет Linux на борту, а SDK основан на Qt.Существует пример приложения, поставляемого с устройством, 'ACR890_Sample_Codes'.В этом приложении есть пользовательский интерфейс DialogWifi.ui, снимок экрана ниже:
Когда приложение развернуто, этот же экран выглядит следующим образом:
Я включил интерфейс пользователя и файлы, связанные с этим интерфейсом ниже, я не вижу ничего ни в Qt Creator, ни в исходном коде, которыйобъясняет, как или где кнопки масштабируются, чтобы соответствовать.
Я искал политики изменения размера, я не вижу никаких, я искал изменения шрифта, ни один, я также искал изменения геометрии, опять нет.
Я бы включил или прикрепил файлы, но я не вижу способа вставить их сюда или прикрепить и сохранить содержимое читабельным.
В формекнопки содержатся в QGridControl.
Вот фрагмент кода XML пользовательского интерфейса:
<widget class="QWidget" name="gridLayoutWidget">
<property name="geometry">
<rect>
<x>10</x>
<y>90</y>
<width>1107</width>
<height>128</height>
</rect>
</property>
<layout class="QGridLayout" name="GridLayout">
<property name="spacing">
<number>0</number>
</property>
<item row="2" column="12">
<widget class="QPushButton" name="PushButton39">
<property name="cursor">
<cursorShape>BlankCursor</cursorShape>
</property>
<property name="focusPolicy">
<enum>Qt::StrongFocus</enum>
</property>
<property name="text">
<string>"</string>
</property>
Пока в конструкторе, связанном с пользовательским интерфейсом, который я пробовал:
qDebug() << qApp->style()->metaObject()->className();
Не помогло, просто отображается имя класса "QStyleSheetStyle ", я тогда попытался:
qDebug() << qApp->style()->metaObject();
Это просто отображает адрес:
0x4b66e440
Затем:
qDebug() << qApp->style();
И это выводит:
QStyleSheetStyle(0x1502c0)
Затем я попытался:
qDebug() << ui->WidgetPassword->styleSheet();
Это родительский объект объекта QGridControl, вывод:
""
А затем одна из кнопок:
qDebug() << ui->PushButton1->styleSheet();
Также:
""