All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.trolltech.examples.SimpleUIExample.html Maven / Gradle / Ivy

Go to download

Legacy QtJambi library for RapidWright, from: https://sourceforge.net/projects/qtjambi/files/4.5.2/

The newest version!





  Simple UI Example
    


Simple UI Example

The Simple UI Example shows how user interface (.jui) files created with Qt Designer can be used to implement user interfaces for applications.

The example's main window shows a text browser and an Open Dialog button that can be used to access a dialog with input fields. When these fields have been completed, or the dialog canceled, the resulting input is placed in the text browser.

SimpleUIExample Class Implementation

The SimpleUIExample class is derived from QMainWindow, and provides a user interface that is implemented by an instance of the Ui_SimpleUIExampleMainWindow class:

    public class SimpleUIExample extends QMainWindow {

        public static void main(String[] args) {
            QApplication.initialize(args);
            SimpleUIExample mainw = new SimpleUIExample();
            mainw.show();
            QApplication.exec();
        }

        Ui_SimpleUIExampleMainWindow mainWindowUi = new Ui_SimpleUIExampleMainWindow();

The instance of the user interface class is implemented as a member of the SimpleUIExample class.

This user interface class is generated from a user interface file when the example is built, and provides a setupUi() method that we use in the SimpleUIExample constructor to set up the user interface:

        public SimpleUIExample() {
            // Place what you made in Designer onto the main window.
            mainWindowUi.setupUi(this);
            setWindowIcon(new QIcon("classpath:com/trolltech/classpath:com/trolltech/images/qt-logo.png"));

            // Connect the OpenDialog button to the showDialog method.
            mainWindowUi.pushButton_OpenDialog.clicked.connect(this, "showDialog()");
        }

We also set the window's icon, and connect a push button defined in the user interface to the showDialog() slot in this class:

        private void showDialog() {
            // Make the dialog.
            Ui_SimpleUIExample dialogUi = new Ui_SimpleUIExample();
            QDialog dialog = new QDialog(this);
            dialogUi.setupUi(dialog);

The dialog itself uses a user interface class generated from a .jui file, which we set up in a similar way to before. Here, we call the Ui_SimpleUIExample instance's setupUi() method on the newly-constructed QDialog instance.

Once set up, the dialog is executed in the normal way:

            String result = "";
            if (dialog.exec() == QDialog.DialogCode.Accepted.value()) {
                result += "Name: " + dialogUi.lineEdit_Name.text() + "\n";
                result += "E-Mail: " + dialogUi.lineEdit_Email.text() + "\n";
                // Get rest of dialog information here

            } else {
                result = "Cancelled by user.";
            }

            mainWindowUi.textBrowser.setText(result);
        }
    }

If the user accepts the dialog, we read the contents of the input widgets it contains, and write the result to the main window's text browser widget. If the user cancels the dialog, the text "Cancelled by user." is written to the text browser.

The main() Function

The main() method is defined as part of the SimpleUIExample class. It constructs the necessary QApplication instance, constructs and shows an instance of the SimpleUIExample class, and executes the application's event loop:

        public static void main(String[] args) {
            QApplication.initialize(args);
            SimpleUIExample mainw = new SimpleUIExample();
            mainw.show();
            QApplication.exec();
        }

The example exits when the event loop has finished running, typically when the user closes the main window.





© 2015 - 2024 Weber Informatics LLC | Privacy Policy