Namespaces

Variants
Actions

Please note that as of October 24, 2014, the Nokia Developer Wiki will no longer be accepting user contributions, including new entries, edits and comments, as we begin transitioning to our new home, in the Windows Phone Development Wiki. We plan to move over the majority of the existing entries over the next few weeks. Thanks for all your past and future contributions.

Archived:How to create a form using QFormLayout in Qt

From Wiki
Jump to: navigation, search

Archived.pngArchived: This article is archived because it is not considered relevant for third-party developers creating commercial solutions today. If you think this article is still relevant, let us know by adding the template {{ReviewForRemovalFromArchive|user=~~~~|write your reason here}}.

Qt Quick should be used for all UI development on mobile devices. The approach described in this article (based on QWidget) is deprecated.

This example shows how to layout a form containing a number of input widgets using QFormLayout.

Article Metadata
Tested with
Devices(s): Emulator
Compatibility
Platform(s): S60 3rd Edition, S60 5th Edition
Symbian
S60 5th Edition
S60 3rd Edition (initial release)
Article
Keywords: QVBoxLayout
Created: james1980 (28 Dec 2008)
Last edited: hamishwillee (11 Oct 2012)

Various Function

  • This property holds the way in which the form's rows wrap.If you want to display each label above its associated field (instead of next to it), set this property to WrapAllRows.
formLayout->setRowWrapPolicy(QFormLayout::WrapAllRows)

Wrappolocy.JPG

  • This property holds the way in which the form's fields grow.If none of the fields can grow and the form is resized, extra space is distributed according to the current form alignment as given figure below
formLayout->setFieldGrowthPolicy(QFormLayout::FieldsStayAtSizeHint);

Creator IDE V4.5

Fieldgrowth.JPG

S6o Emulator

Fieldgrowth1.JPG

  • To set the vertical spacing.
formLayout->setVerticalSpacing(50);

Spacing.JPG


Code

#include <QApplication>
#include <QFormLayout>
#include <QLineEdit>
#include <QSpinBox>
#include <QString>
#include <QWidget>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QFormLayout *formLayout = new QFormLayout;
QLineEdit *nameLineEdit = new QLineEdit;
QLineEdit *emailLineEdit = new QLineEdit;
QSpinBox *ageSpinBox = new QSpinBox;
QWidget *win = new QWidget;
formLayout->addRow(("&Name:"), nameLineEdit);
formLayout->addRow(("&Email:"), emailLineEdit);
formLayout->addRow(("&Age:"), ageSpinBox);
win->setLayout(formLayout);
win->show();
 
return app.exec();
}

Screen Shot

Formlayout.jpg

This page was last modified on 11 October 2012, at 01:14.
106 page views in the last 30 days.

Was this page helpful?

Your feedback about this content is important. Let us know what you think.

 

Thank you!

We appreciate your feedback.

×