Creating a simple text input dialog

In this recipe, we'll demonstrate one of the simplest methods used for accepting input from a user, a text input dialog.

Getting ready

Open the QGIS Python Console by selecting the Plugins menu and then clicking on Python Console.

How to do it...

In this recipe, we will initialize the dialog and then configure its title and label. We'll set the editing mode and the default text. When you click on the OK button, the text will be printed to the Python Console. To do this, we need to perform the following steps:

  1. First, we need to import the GUI library:
    from PyQt4.QtGui import *
    
  2. Next, we initialize the dialog:
    qid = QInputDialog()
    
  3. Now, we set the window's title, label text, editing mode, and default text:
    title = "Enter Your Name"
    label = "Name: "
    mode = QLineEdit.Normal
    default = "<your name here>"
    
  4. We configure the dialog while capturing the user input and the return code in variables:
    text, ok = QInputDialog.getText(qid, title, label, mode, default)
    
  5. When the dialog appears, type in some text and click on the OK button.
  6. Now, we print the user input to the console:
    print text
    
  7. Finally, verify that the correct text is printed to the Python Console.

How it works...

The editing mode differentiates between normal, which we used here, and password, to obscure typed passwords. Although we haven't used it in this example, the return code is a Boolean, which can be used to verify that the user input occurred.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset