Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. Qt Programming Language
Forum Update on Monday, May 27th 2025

Qt Programming Language

Scheduled Pinned Locked Moved Unsolved General and Desktop
331 Posts 17 Posters 308.9k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • A Offline
    A Offline
    Annabelle
    wrote on 8 Sept 2017, 01:20 last edited by
    #23

    For the "Baptism Ceremony Builder" part of my Ceremony script generator, how would I make a single-line edit box who's label changes depending on which radio button is selected. For example, if the "Infant" or "Child" radio button is selected, the edit box would be named "Child", and if either "Youth" or "Adult" is selected, the same edit box would be named "Participant". This is of course where the customer would put the name of the child/participant being presented in the baptism/christening/dedication/naming ceremony. Same thing goes for the boxes named "Parent 1" (or "Sponsor 1") and "Parent 2" (or "Sponsor 2"). Also, how would I automatically fill in gender appropriate nouns and pronouns in the finished text based on the gender selected (Male or Female)?

    1 Reply Last reply
    0
    • S Offline
      S Offline
      SGaist
      Lifetime Qt Champion
      wrote on 8 Sept 2017, 21:24 last edited by
      #24

      That's where signals and slots comes into play. For each control proposing a choice you will have a slot that will modify your UI based on the state/choice of the control that was just modified.

      Interested in AI ? www.idiap.ch
      Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

      A 3 Replies Last reply 8 Sept 2017, 22:51
      0
      • S SGaist
        8 Sept 2017, 21:24

        That's where signals and slots comes into play. For each control proposing a choice you will have a slot that will modify your UI based on the state/choice of the control that was just modified.

        A Offline
        A Offline
        Annabelle
        wrote on 8 Sept 2017, 22:51 last edited by
        #25

        @SGaist said in Qt Programming Language:

        That's where signals and slots comes into play. For each control proposing a choice you will have a slot that will modify your UI based on the state/choice of the control that was just modified.

        I would appreciate if you could please be so kind as to give me an example of code as to what this will look like. Also, here's a bit of an example of Qt widget code I've put together. Please tell me if this looks right. If there's anything I need to change in my code, please let me know.

        QButtonGroup
        QRadioButton *button = new QRadioButton ("Bride", this);
        QRadioButton *button = new QRadioButton ("Groom", this);
        QLineEdit *lineEdit = new QLineEdit ("Spouse 1 Name", this);
        QButtonGroup
        QRadioButton *button = new QRadioButton ("Bride", this);
        QRadioButton *button = new QRadioButton ("Groom", this);
        QLineEdit *lineEdit = new QLineEdit ("Spouse 2 Name", this);
        QPushButton *button = new QPushButton ("Back", this);
        QPushButton *button = new QPushButton ("Next", this);
        
        1 Reply Last reply
        0
        • S Offline
          S Offline
          SGaist
          Lifetime Qt Champion
          wrote on 10 Sept 2017, 20:19 last edited by
          #26

          Do you want to build something like a QWizard ?

          Interested in AI ? www.idiap.ch
          Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

          A 1 Reply Last reply 10 Sept 2017, 23:46
          0
          • S SGaist
            10 Sept 2017, 20:19

            Do you want to build something like a QWizard ?

            A Offline
            A Offline
            Annabelle
            wrote on 10 Sept 2017, 23:46 last edited by
            #27

            @SGaist said in Qt Programming Language:

            Do you want to build something like a QWizard ?

            I guess you could say that. Then when customers come to the last step, the "Download" button would be like the "Finish" button of an Installation Program if you like. So when customers click the "Download" button, a finished document appears on their screen. Then there could be a "Print" button, and a "Save" button.

            1 Reply Last reply
            0
            • S Offline
              S Offline
              SGaist
              Lifetime Qt Champion
              wrote on 11 Sept 2017, 20:08 last edited by
              #28

              There's something that is not exactly clear. Do you want to write an application that people install on there computer to generate these scripts ? Or should they go to some sort of web site ?

              Interested in AI ? www.idiap.ch
              Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

              A 1 Reply Last reply 11 Sept 2017, 20:48
              0
              • S SGaist
                11 Sept 2017, 20:08

                There's something that is not exactly clear. Do you want to write an application that people install on there computer to generate these scripts ? Or should they go to some sort of web site ?

                A Offline
                A Offline
                Annabelle
                wrote on 11 Sept 2017, 20:48 last edited by
                #29

                @SGaist said in Qt Programming Language:

                There's something that is not exactly clear. Do you want to write an application that people install on there computer to generate these scripts ? Or should they go to some sort of web site ?

                It's the former. I want to build an application that people install on their computer.

                1 Reply Last reply
                0
                • S Offline
                  S Offline
                  SGaist
                  Lifetime Qt Champion
                  wrote on 11 Sept 2017, 21:15 last edited by
                  #30

                  Ok, then I'd recommend breaking your current design in logical pieces. For example, there's no need to double the number of widget to handle both spouse names. You can create one widget for that part and then have two instances of it in your "main widget".

                  Interested in AI ? www.idiap.ch
                  Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                  A 1 Reply Last reply 11 Sept 2017, 22:34
                  0
                  • S SGaist
                    11 Sept 2017, 21:15

                    Ok, then I'd recommend breaking your current design in logical pieces. For example, there's no need to double the number of widget to handle both spouse names. You can create one widget for that part and then have two instances of it in your "main widget".

                    A Offline
                    A Offline
                    Annabelle
                    wrote on 11 Sept 2017, 22:34 last edited by
                    #31

                    @SGaist said in Qt Programming Language:

                    Ok, then I'd recommend breaking your current design in logical pieces. For example, there's no need to double the number of widget to handle both spouse names. You can create one widget for that part and then have two instances of it in your "main widget".

                    Two instances of the same widget? I'm confused! Could you please tell me exactly how I could do that? Here's a bit of code, I don't know if this is what you want me to try.

                    QFormLayout *form = newQFormLayout:
                    SetWindowTitle(tr("Step 2");
                    resize(480, 320);
                    }
                    QButtonGroup *buttonGroup = new buttonGroup(tr("Spouse 1 Gender")
                    QRadioButton *radio1 = new QRadioButton ("Bride", this);
                    QRadioButton *radio2 = new QRadioButton ("Groom", this);
                    radio1->setChecked(true)
                    QLineEdit *Spouse1NameEdit = new QLineEdit (this);
                    QLabel *NameLabel = new QLabel("Spouse 1 Name", this);
                    NameLabel->setBuddy(Spouse1NameEdit);
                    QButtonGroup *buttonGroup = new buttonGroup(tr("Spouse 2 Gender")
                    QRadioButton *radio3 = new QRadioButton ("Bride", this);
                    QRadioButton *radio4 = new QRadioButton ("Groom", this);
                    radio4->setChecked(true)
                    QLineEdit *Spouse2NameEdit = new QLineEdit (this);
                    QLabel *NameLabel = new QLabel("Spouse 2 Name", this);
                    NameLabel->setBuddy(Spouse2NameEdit);
                    QPushButton *button = new QPushButton ("Back", this);
                    QPushButton *button = new QPushButton ("Next", this);
                    
                    I also want to find out, how do I put the following text into the beginning of the window when the customer gets to this specific screen.
                    
                    "The Basics: To begin, enter the first names of the couple, the last name(s) they'll be using after their marriage, and the city/town, then select the state/province, and country in which the wedding will take place."
                    

                    Same goes for any of the other screens up to the "Finish" screen. The text of the "Finish" screen will say:

                    "Congratulations! You just built a one-of-a-kind wedding ceremony. Click the "Download" button to read your wedding script in the wizard. Click the "Save" button to save your script in any text format on your computer. Click the "Print" button to send your script to your printer." The kind of ceremony changes, depending on what is selected in the "Welcome" screen. Either a "Wedding Ceremony", a "Baptism Ceremony", or a "Funeral Ceremony".
                    1 Reply Last reply
                    0
                    • S Offline
                      S Offline
                      SGaist
                      Lifetime Qt Champion
                      wrote on 12 Sept 2017, 21:41 last edited by
                      #32

                      You can use a QLabel when you want to show some text.

                      What I meant is something like:

                      class SpouseWidget : public QWidget {
                          Q_OBJECT
                      public:
                          enum Gender {
                              Bride,
                              Groom
                          }
                      public:
                          SpouseWidget(QWidget *parent = 0);
                          QString name() const;
                          Gender gender() const;
                      
                      private:
                           QLineEdit *nameLineEdit;
                          QButtonGroup *genderButtonGroup;
                      };
                      
                      SpouseWidget::SpouseWidget(QWidget *parent):
                          QWidget(parent),
                          nameLineEdit(new QLineEdit),
                          genderButtonGroup(new QButtonGroup(this)
                      
                          QRadioButton *brideButton = new QRadioButton (tr("Bride"));
                          brideButton->setProperty("gender", SpouseWidget::Bride);
                          bride->setChecked(true);
                          QRadioButton *groomButton = new QRadioButton (tr("Groom"));
                          groomButton->setProperty("gender", SpouseWidget::Groom);
                      
                          genderButtonGroup->add(brideButton);
                          genderButtonGroup->add(groomButton);
                          QHBoxLayout *genderLayout = new QHBoxLayout;
                          genderLayout->addWidget(brideButton);
                          genderLayout->addWidget(groomButton);
                      
                          QFormLayout *layout = new QFormLayout(this);
                          layout->addRow(tr("Name"), nameLineEdit);
                          layout->addRow(tr("Gender"), genderLayout);
                      }
                      
                      QString SpouseWidget::name() const 
                      {
                          return nameLineEdit->text();
                      }
                      
                      SpouseWidget::Gender SpouseWidget::gender() const
                      {
                          QAbstractButton *button = genderButtonGroup->checkedButton();
                          QVariant genderVariant = button->property("gender");
                          return genderVariant.value<SpouseWidget::Gender>()
                      }
                      

                      Then in your page you can use a QGroupBox for each spouse with an instance of SpouseWidget inside.

                      Interested in AI ? www.idiap.ch
                      Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                      A 2 Replies Last reply 12 Sept 2017, 22:50
                      0
                      • A Offline
                        A Offline
                        Annabelle
                        wrote on 12 Sept 2017, 22:10 last edited by
                        #33

                        I also want to find out, how do I put the following text into the beginning of the window when the customer gets to this specific screen.

                        "The Basics: To begin, enter the first names of the couple, the last name(s) they'll be using after their marriage, and the city/town, then select the
                        state/province, and country in which the wedding will take place."
                        Same goes for any of the other screens up to the "Finish" screen. The text of the "Finish" screen will say:

                        "Congratulations! You just built a one-of-a-kind wedding ceremony. Click the "Download" button to read your wedding script in the wizard. Click the "Save"
                        button to save your script in any text format on your computer. Click the "Print" button to send your script to your printer." The kind of ceremony changes,
                        depending on what is selected in the "Welcome" screen. Either a "Wedding Ceremony", a "Baptism Ceremony", or a "Funeral Ceremony".

                        1 Reply Last reply
                        0
                        • S SGaist
                          12 Sept 2017, 21:41

                          You can use a QLabel when you want to show some text.

                          What I meant is something like:

                          class SpouseWidget : public QWidget {
                              Q_OBJECT
                          public:
                              enum Gender {
                                  Bride,
                                  Groom
                              }
                          public:
                              SpouseWidget(QWidget *parent = 0);
                              QString name() const;
                              Gender gender() const;
                          
                          private:
                               QLineEdit *nameLineEdit;
                              QButtonGroup *genderButtonGroup;
                          };
                          
                          SpouseWidget::SpouseWidget(QWidget *parent):
                              QWidget(parent),
                              nameLineEdit(new QLineEdit),
                              genderButtonGroup(new QButtonGroup(this)
                          
                              QRadioButton *brideButton = new QRadioButton (tr("Bride"));
                              brideButton->setProperty("gender", SpouseWidget::Bride);
                              bride->setChecked(true);
                              QRadioButton *groomButton = new QRadioButton (tr("Groom"));
                              groomButton->setProperty("gender", SpouseWidget::Groom);
                          
                              genderButtonGroup->add(brideButton);
                              genderButtonGroup->add(groomButton);
                              QHBoxLayout *genderLayout = new QHBoxLayout;
                              genderLayout->addWidget(brideButton);
                              genderLayout->addWidget(groomButton);
                          
                              QFormLayout *layout = new QFormLayout(this);
                              layout->addRow(tr("Name"), nameLineEdit);
                              layout->addRow(tr("Gender"), genderLayout);
                          }
                          
                          QString SpouseWidget::name() const 
                          {
                              return nameLineEdit->text();
                          }
                          
                          SpouseWidget::Gender SpouseWidget::gender() const
                          {
                              QAbstractButton *button = genderButtonGroup->checkedButton();
                              QVariant genderVariant = button->property("gender");
                              return genderVariant.value<SpouseWidget::Gender>()
                          }
                          

                          Then in your page you can use a QGroupBox for each spouse with an instance of SpouseWidget inside.

                          A Offline
                          A Offline
                          Annabelle
                          wrote on 12 Sept 2017, 22:50 last edited by
                          #34

                          @SGaist said in Qt Programming Language:

                          You can use a QLabel when you want to show some text.

                          What I meant is something like:

                          class SpouseWidget : public QWidget {
                              Q_OBJECT
                          public:
                              enum Gender {
                                  Bride,
                                  Groom
                              }
                          public:
                              SpouseWidget(QWidget *parent = 0);
                              QString name() const;
                              Gender gender() const;
                          
                          private:
                               QLineEdit *nameLineEdit;
                              QButtonGroup *genderButtonGroup;
                          };
                          
                          SpouseWidget::SpouseWidget(QWidget *parent):
                              QWidget(parent),
                              nameLineEdit(new QLineEdit),
                              genderButtonGroup(new QButtonGroup(this)
                          
                              QRadioButton *brideButton = new QRadioButton (tr("Bride"));
                              brideButton->setProperty("gender", SpouseWidget::Bride);
                              bride->setChecked(true);
                              QRadioButton *groomButton = new QRadioButton (tr("Groom"));
                              groomButton->setProperty("gender", SpouseWidget::Groom);
                          
                              genderButtonGroup->add(brideButton);
                              genderButtonGroup->add(groomButton);
                              QHBoxLayout *genderLayout = new QHBoxLayout;
                              genderLayout->addWidget(brideButton);
                              genderLayout->addWidget(groomButton);
                          
                              QFormLayout *layout = new QFormLayout(this);
                              layout->addRow(tr("Name"), nameLineEdit);
                              layout->addRow(tr("Gender"), genderLayout);
                          }
                          
                          QString SpouseWidget::name() const 
                          {
                              return nameLineEdit->text();
                          }
                          
                          SpouseWidget::Gender SpouseWidget::gender() const
                          {
                              QAbstractButton *button = genderButtonGroup->checkedButton();
                              QVariant genderVariant = button->property("gender");
                              return genderVariant.value<SpouseWidget::Gender>()
                          }
                          

                          Then in your page you can use a QGroupBox for each spouse with an instance of SpouseWidget inside.

                          After I compile all my widgets in Notepad++, how would I turn them into an executable program?

                          1 Reply Last reply
                          0
                          • S Offline
                            S Offline
                            SGaist
                            Lifetime Qt Champion
                            wrote on 14 Sept 2017, 21:55 last edited by
                            #35

                            You can use a QLabel to show the text and add it at the bottom of the QFormLayout without specifying a text.

                            As for your question with Notepad++, maybe using this plugin ?

                            Interested in AI ? www.idiap.ch
                            Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                            A 2 Replies Last reply 14 Sept 2017, 22:15
                            0
                            • S SGaist
                              14 Sept 2017, 21:55

                              You can use a QLabel to show the text and add it at the bottom of the QFormLayout without specifying a text.

                              As for your question with Notepad++, maybe using this plugin ?

                              A Offline
                              A Offline
                              Annabelle
                              wrote on 14 Sept 2017, 22:15 last edited by
                              #36

                              @SGaist said in Qt Programming Language:

                              You can use a QLabel to show the text and add it at the bottom of the QFormLayout without specifying a text.

                              As for your question with Notepad++, maybe using this plugin ?

                              Could you please explain what you mean when you say, "You can use a QLabel to show the text and add it at the bottom of the QFormLayout without specifying a text."? I'm a bit confused on that one!

                              1 Reply Last reply
                              0
                              • S SGaist
                                14 Sept 2017, 21:55

                                You can use a QLabel to show the text and add it at the bottom of the QFormLayout without specifying a text.

                                As for your question with Notepad++, maybe using this plugin ?

                                A Offline
                                A Offline
                                Annabelle
                                wrote on 14 Sept 2017, 23:48 last edited by
                                #37

                                @SGaist said in Qt Programming Language:

                                You can use a QLabel to show the text and add it at the bottom of the QFormLayout without specifying a text.

                                As for your question with Notepad++, maybe using this plugin ?

                                I tried installing that plugin, but when I launched Notepad++, a screen popped up with a message telling me that the plugin isn't compatible with the version of Notepad++ I have. Is that because I have a newer version of Notepad++? I'm confused on that one!

                                1 Reply Last reply
                                0
                                • S Offline
                                  S Offline
                                  SGaist
                                  Lifetime Qt Champion
                                  wrote on 15 Sept 2017, 21:54 last edited by
                                  #38

                                  Like shown in my sample widget, you should use layouts in order to place your widgets around in your application. Therefore my suggestion, put your text into a QLabel with setText and then put that label at the appropriate place within the layout.

                                  As for the plugin, it might be out of date regarding the version of Notepad++. If possible, I'd recommend using Qt Creator in order to build your application. It would likely make things easier.

                                  Interested in AI ? www.idiap.ch
                                  Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                                  A 1 Reply Last reply 16 Sept 2017, 00:15
                                  0
                                  • A Offline
                                    A Offline
                                    Annabelle
                                    wrote on 15 Sept 2017, 22:15 last edited by
                                    #39

                                    How would I be able to use QT Creator to make my project? Would I put the code I've already made in Notepad++ into a new project in Qt Creator? What would I do?

                                    1 Reply Last reply
                                    0
                                    • S SGaist
                                      15 Sept 2017, 21:54

                                      Like shown in my sample widget, you should use layouts in order to place your widgets around in your application. Therefore my suggestion, put your text into a QLabel with setText and then put that label at the appropriate place within the layout.

                                      As for the plugin, it might be out of date regarding the version of Notepad++. If possible, I'd recommend using Qt Creator in order to build your application. It would likely make things easier.

                                      A Offline
                                      A Offline
                                      Annabelle
                                      wrote on 16 Sept 2017, 00:15 last edited by
                                      #40

                                      @SGaist said in Qt Programming Language:

                                      Like shown in my sample widget, you should use layouts in order to place your widgets around in your application. Therefore my suggestion, put your text into a QLabel with setText and then put that label at the appropriate place within the layout.

                                      As for the plugin, it might be out of date regarding the version of Notepad++. If possible, I'd recommend using Qt Creator in order to build your application. It would likely make things easier.

                                      I can't access Qt Creator with my screenreader, JAWS (Job Access With Speech). That's why I'm making the code in Notepad++. I just wish I knew how to make the finished program.

                                      1 Reply Last reply
                                      0
                                      • A Offline
                                        A Offline
                                        Annabelle
                                        wrote on 21 Sept 2017, 16:56 last edited by
                                        #41

                                        I'm still a bit stuck on this Qt Programming Language. Since I can't access Qt Creator with my JAWS screenreader, as it doesn't recognize image-based icons, how else can I create a finished program after compiling the source code in Notepad++? Anybody have any answers for me?

                                        mrjjM 1 Reply Last reply 21 Sept 2017, 17:06
                                        0
                                        • A Annabelle
                                          21 Sept 2017, 16:56

                                          I'm still a bit stuck on this Qt Programming Language. Since I can't access Qt Creator with my JAWS screenreader, as it doesn't recognize image-based icons, how else can I create a finished program after compiling the source code in Notepad++? Anybody have any answers for me?

                                          mrjjM Offline
                                          mrjjM Offline
                                          mrjj
                                          Lifetime Qt Champion
                                          wrote on 21 Sept 2017, 17:06 last edited by
                                          #42

                                          @Annabelle
                                          So you can compile it already?
                                          Or is it the compiling part that is hard to do ?

                                          Can the JAWS read a command prompt ?

                                          A 1 Reply Last reply 22 Sept 2017, 13:16
                                          0

                                          32/331

                                          12 Sept 2017, 21:41

                                          topic:navigator.unread, 299
                                          • Login

                                          • Login or register to search.
                                          32 out of 331
                                          • First post
                                            32/331
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Users
                                          • Groups
                                          • Search
                                          • Get Qt Extensions
                                          • Unsolved