Qt Programming Language



  • Hi, you will need to create a .pro file which gives instructions on how to build your application. http://doc.qt.io/qt-4.8/qmake-project-files.html

    Once you have have this. you can do as instructed by @sierdzio in CMD.



  • @Annabelle Sorry, I was at work when I made my initial response to this thread. A more elaborate answer for you follows as I take it you are beginning in Qt and it may be difficult for you to look up resources.

    Given the scope of your project I think it will suffice to use a simple Qmake project file such as:

    myapp.pro

    TEMPLATE = app
    
    QT += widgets
    
    SOURCES += main.cpp \
        MainWindow.cpp \
        SpouseWidget.cpp
    
    HEADERS += \
        MainWindow.h \
        SpouswWidget.h
    
    OTHER_FILES += \
        anyotherfile.png
    

    You may need to make changes to this in order to fit the needs of your project, but this should be a good enough example for you.

    Once you have this in place, you can open up your favorite Command Line Interface (eg. cmd.exe for Windows).

    Type:

    qmake myapp.pro
    make
    

    Your compiler will generate a binary file for your application at this point.

    I hope this helps,
    Have fun.



  • Another thing I'd like to do is make icons for the push buttons, radio buttons, combo boxes, and checkboxes. I'd like to find out, is it OK for me to use unicode symbols as icons? For example:
    In the welcome screen, there are the following Radio Buttons
    ⚭ (Wedding Ceremony Radio Button)
    ~β›² (Baptism Ceremony Radio Button)
    β›Ό (Funeral Ceremony Radio Button)
    For the Spouse Genders, there should be the following Icons:
    πŸ‘° (Bride Radio Button)
    🀡 (Groom Radio Button)
    For the Baptism Person Types, there should be the following Icons:
    πŸ‘¦πŸ‘ΆπŸ‘§ (Infant Radio Button)
    πŸ‘¦πŸ‘§ (Child Radio Button)
    πŸ‘¦πŸ‘¨πŸ‘§πŸ‘© (Youth Radio Button)
    πŸ‘¨πŸ‘΄πŸ‘©πŸ‘΅ (Adult Radio Button)
    For the Funeral Ceremony Types, there should be the following icons:
    ⚰ (Funeral Radio Button)
    ⚱ (Memorial Service Radio Button)
    Note that some of the icons are composed of two or more unicode characters put together, as I couldn't find separate unicode symbols to represent them.



  • You should be able to use QString::fromUtf8() for this: http://doc.qt.io/qt-5/qstring.html#fromUtf8



  • @Allanis said in Qt Programming Language:

    You should be able to use QString::fromUtf8() for this: http://doc.qt.io/qt-5/qstring.html#fromUtf8

    Could you please be so kind as to give me an example of what one of my icons would look like with the QString::fromUtf8() code? For example: πŸ‘¦πŸ‘ΆπŸ‘§



  • Sure. I'm not sure exactly what you mean. Do you want an image or a code example? either way I whipped up a quick example to demonstrate what it would look like. Here's an image.

    0_1506120620297_annabelle.png

    Given that your first post mentioned you where visually impaired, I think I may have misunderstood your meaning, so here's an example in code:

      QRadioButton* rb = new QRadioButton();
      QString str = QString::fromUtf8("<Utf-8 code> Button Name");
      rb->setText(str);
    

    Where <Utf-8 code> = the character you wish to display.
    Pretty sure there is a nicer way to do it. But I'm off to bed. That should get you started though.



  • @Allanis said in Qt Programming Language:

    Sure. I'm not sure exactly what you mean. Do you want an image or a code example? either way I whipped up a quick example to demonstrate what it would look like. Here's an image.

    0_1506120620297_annabelle.png

    Given that your first post mentioned you where visually impaired, I think I may have misunderstood your meaning, so here's an example in code:

      QRadioButton* rb = new QRadioButton();
      QString str = QString::fromUtf8("<Utf-8 code> Button Name");
      rb->setText(str);
    

    Where <Utf-8 code> = the character you wish to display.
    Pretty sure there is a nicer way to do it. But I'm off to bed. That should get you started though.

    So are you thinking I should write something like:
    QRadioButton* rb = new QRadioButton();
    QString str = QString::fromUtf8("<πŸ‘°> Button Name");
    rb->setText(str);
    And for "Button Name", would it be something like:
    QRadioButton* rb = new QRadioButton();
    QString str = QString::fromUtf8("<πŸ‘°> Bride");
    rb->setText(str);
    Something along those lines?



  • Yeah that will work. But remove the <> from around your unicode character. I only placed them their as placeholder. It will work by placing the unicode character in your source file as you have done, but I would recommend finding the value for it instead. I'm replying from my phone so I can't look ot up for you.



  • @Allanis said in Qt Programming Language:

    Yeah that will work. But remove the <> from around your unicode character. I only placed them their as placeholder. It will work by placing the unicode character in your source file as you have done, but I would recommend finding the value for it instead. I'm replying from my phone so I can't look ot up for you.

    @Allanis said in Qt Programming Language:

    Yeah that will work. But remove the <> from around your unicode character. I only placed them their as placeholder. It will work by placing the unicode character in your source file as you have done, but I would recommend finding the value for it instead. I'm replying from my phone so I can't look ot up for you.

    By value, do you mean the Unicode value? Or do you mean the hexidecimal value? I'm confused!



  • @Annabelle said in Qt Programming Language:

    πŸ‘°

    Sorry, I wasn't too clear. You should use the UCN for example: '\u2639' will represent ☹
    There can be problems with this as compilers are required to support only the basic source characters. I'm not sure if Qt gives you much help in way of UCN's so if it doesn't display the character for you, use the literal '☹' in your source, and perhaps see if someone else can help you with the use of UCN as I'm not so sure without reading up on it. Perhaps also try reading up on character sets to understand encodings.

    Edit:
    I just checked up the code for πŸ‘§

      QString str1 = QString::fromUtf8("\U0001F467 Button 1");
    


  • @Allanis said in Qt Programming Language:

    @Annabelle said in Qt Programming Language:

    πŸ‘°

    Sorry, I wasn't too clear. You should use the UCN for example: '\u2639' will represent ☹
    There can be problems with this as compilers are required to support only the basic source characters. I'm not sure if Qt gives you much help in way of UCN's so if it doesn't display the character for you, use the literal '☹' in your source, and perhaps see if someone else can help you with the use of UCN as I'm not so sure without reading up on it. Perhaps also try reading up on character sets to understand encodings.

    Edit:
    I just checked up the code for πŸ‘§

      QString str1 = QString::fromUtf8("\U0001F467 Button 1");
    

    So for Bride:

    QString str1 = QString::fromUtf8("\U0001F470 Button 1");
    -> Set Text = "Bride";



  • @Annabelle said in Qt Programming Language:

    \U0001F470

    That's right. You've got it.



  • @Allanis said in Qt Programming Language:

    @Annabelle said in Qt Programming Language:

    \U0001F470

    That's right. You've got it.

    So would this look right?

    QString str1 = QString::fromUtf8("\U0001F470 Button 1");
    -> Set Text = "Bride";
    Not quite sure how to do the "Set Text" part, so I did the best I could when writing the code. So how would I compile the full version of the radio button? Would it look something like this?
    QRadioButton *button = new QRadioButton ("Bride", this);
    QString str1 = QString::fromUtf8("\U0001F470 Button 1");
    -> Set Text = "Bride";



  • QRadioButton* button = new QRadioButton();
    QString str1 = QString::fromUtf8("\U0001F470 Bride");
    button->setText(str1);
    

    I would suggest reading a book to get yourself better acquainted with C++. Otherwise you will encounter many pitfalls.



  • @Allanis said in Qt Programming Language:

    QRadioButton* button = new QRadioButton();
    QString str1 = QString::fromUtf8("\U0001F470 Bride");
    button->setText(str1);
    

    I would suggest reading a book to get yourself better acquainted with C++. Otherwise you will encounter many pitfalls.

    Are there any books out there that are available in Braille? Since that's the primary format which I read. If that's not possible, is there a .chm help file that can explain the language in detail?



  • It may be difficult to find such a technical book in Braille. I had a look but came up empty. You can find a copy of "C++ gui programming with qt4 2nd edition" in .chm.

    https://github.com/sherlock/qt?files=1

    I think your screen reader should be ok to read epub? If so you could pickup most textbooks from amazon or something.



  • @Allanis said in Qt Programming Language:

    It may be difficult to find such a technical book in Braille. I had a look but came up empty. You can find a copy of "C++ gui programming with qt4 2nd edition" in .chm.

    https://github.com/sherlock/qt?files=1

    I think your screen reader should be ok to read epub? If so you could pickup most textbooks from amazon or something.

    I tried searching for the .chm file "C++ gui programming with qt4 2nd
    edition" on the link you provided, but it says "No Matching Files Found". Where do I go next?


  • Lifetime Qt Champion



  • @mrjj said in Qt Programming Language:

    @Annabelle
    Hi, it is hidden inside a download button
    this is direct link
    https://github.com/sherlock/qt/raw/master/C%2B%2B GUI Programming with Qt4 2ndEdition.chm

    I downloaded the .chm file, but now when I attempt to read any of the topics, it seems there's nothing in them. Is there something wrong with the file?


  • Lifetime Qt Champion

    @Annabelle
    Hi
    Yes it seems that at least on windows 10, only the toc is there -
    nothing is shown when you click on a topic.

    If pdf is ok, here is direct link
    https://tfetimes.com/wp-content/uploads/2015/09/c-gui-programming-with-qt-4-2ndedition.pdf



  • Sorry if I provided a bad link. (Didn't really download to check it).
    See if your screen reader can read epubs ok. And you can find all you need on amazon. (Alternate outlets are available too.)



  • @mrjj said in Qt Programming Language:

    @Annabelle
    Hi
    Yes it seems that at least on windows 10, only the toc is there -
    nothing is shown when you click on a topic.

    If pdf is ok, here is direct link
    https://tfetimes.com/wp-content/uploads/2015/09/c-gui-programming-with-qt-4-2ndedition.pdf

    1. This machine I'm on is Windows XP.
    2. My screenreader doesn't read PDF's.
    3. What are EPubs?
    4. Would I have to pay to find it on Amazon? If so, how much?


  • https://www.youtube.com/watch?v=ETOohmYui3Q
    

    Would finding a pdf that would read her all the text from a basic C++ book work?

    Then use Jaws to google examples or terms that she doesn't understand?

    EPUB is an e-book file format with the extension .epub that can be downloaded and read on devices like smartphones, tablets, computers, or e-readers.



  • @Sunfluxgames said in Qt Programming Language:

    https://www.youtube.com/watch?v=ETOohmYui3Q
    

    Would finding a pdf that would read her all the text from a basic C++ book work?

    Then use Jaws to google examples or terms that she doesn't understand?

    EPUB is an e-book file format with the extension .epub that can be downloaded and read on devices like smartphones, tablets, computers, or e-readers.

    Which book of Basic C++ are you thinking of? PDF's in general don't work with my screenreader. .chm's, .txt's, and .doc's work just fine.



  • @Annabelle
    Excuse my jumping in. I am not a Qt professional, but I have been following this thread.

    I hope you find success in however you approach programming. Even for a fully-sighted person C++ can be a bit daunting! May I suggest you have a brief look at this answer https://stackoverflow.com/a/3274617/489865, from a blind person reporting success with C++. There are also interesting posts in https://stackoverflow.com/questions/118984/how-can-you-program-if-youre-blind



  • Sorry, I hope that my reply it isn't off topic.
    If you have and idea about an application to write and you think that it will be have a business or you already have customers that have asked for it don't worry.
    You can design the ui (that it is easy) and you can ask to someone that knows C++ to write the code for you.
    In the past I had a customer that did somehing like this.



  • @mrdebug said in Qt Programming Language:

    Sorry, I hope that my reply it isn't off topic.
    If you have and idea about an application to write and you think that it will be have a business or you already have customers that have asked for it don't worry.
    You can design the ui (that it is easy) and you can ask to someone that knows C++ to write the code for you.
    In the past I had a customer that did somehing like this.

    1. I know how to write some of the code. It's the compiling part that I have trouble with. Also, I want to find a .chm help file that explains more of the codes of the Qt programming language in detail.
    2. I haven't even started my company, so I don't have any customers as of this moment.

  • Moderators

    @Annabelle I can't help you with the chm part, but if you need help compiling I can help you figure out both qmake and cmake. Cmake being my preferred method of building Qt projects.

    I build everything command line and rarely use IDEs. That sounds exactly what you're looking for if you are using notepad++ and just need a command line build.



  • @ambershark this topic was already covered. From context that she has used "compile" in various times I think she means that she isn't sure how to "fit all the pieces" together to get her code working.



  • @ambershark said in Qt Programming Language:

    @Annabelle I can't help you with the chm part, but if you need help compiling I can help you figure out both qmake and cmake. Cmake being my preferred method of building Qt projects.

    I build everything command line and rarely use IDEs. That sounds exactly what you're looking for if you are using notepad++ and just need a command line build.

    JAWS is really good with the command line method. What are the commands I should put in when compiling my program?



  • @Allanis said in Qt Programming Language:

    @Annabelle Sorry, I was at work when I made my initial response to this thread. A more elaborate answer for you follows as I take it you are beginning in Qt and it may be difficult for you to look up resources.

    Given the scope of your project I think it will suffice to use a simple Qmake project file such as:

    myapp.pro

    TEMPLATE = app
    
    QT += widgets
    
    SOURCES += main.cpp \
        MainWindow.cpp \
        SpouseWidget.cpp
    
    HEADERS += \
        MainWindow.h \
        SpouswWidget.h
    
    OTHER_FILES += \
        anyotherfile.png
    

    You may need to make changes to this in order to fit the needs of your project, but this should be a good enough example for you.

    Once you have this in place, you can open up your favorite Command Line Interface (eg. cmd.exe for Windows).

    Type:

    qmake myapp.pro
    make
    

    Your compiler will generate a binary file for your application at this point.

    I hope this helps,
    Have fun.



  • The above was posted four days ago. You have not compiled and tested your program at all?



  • @Allanis said in Qt Programming Language:

    The above was posted four days ago. You have not compiled and tested your program at all?

    No I haven't compiled and tested my program yet. I'm still writing up the code. I'm wondering if there's a .chm help file out there, which will list all the available possibilities for parameters like buttons, checkboxes, radiobuttons, tooltips, infotips, comboboxes, and edit boxes (both single line and multi line).



  • @Annabelle I struggled to find a .chm for you. But the best place you can look for help with the SDK is the official documentation: http://doc.qt.io/qt-5/

    Check out:
    http://doc.qt.io/qt-5/qtwidgets-module.html
    You will find what you need in relation to Radio Buttons, tooltips etc..



  • @Annabelle My suggestion would be to start small. Split your project up into small pieces rather than look at it as a whole. I would use a Qwizard and make pages with the ability to select options and those options give out the results you are looking for.

    I would get some Ebooks on C++ and learn the basics. Start with console applications and learn the basics of what you are trying to do. Make a text story with options and results base on what is written in the command prompt. Little stuff like this will help you understand the basics of programming.

    When it comes to QT your gonna have to learn it from the ground up. Learn about the main..

    "You can't put the cart before the horse"



  • @Sunfluxgames said in Qt Programming Language:

    @Annabelle My suggestion would be to start small. Split your project up into small pieces rather than look at it as a whole. I would use a Qwizard and make pages with the ability to select options and those options give out the results you are looking for.

    I would get some Ebooks on C++ and learn the basics. Start with console applications and learn the basics of what you are trying to do. Make a text story with options and results base on what is written in the command prompt. Little stuff like this will help you understand the basics of programming.

    When it comes to QT your gonna have to learn it from the ground up. Learn about the main..

    "You can't put the cart before the horse"

    So for example, in the Wedding Elements Page of the wizard, there are checkboxes with different titles, and I want to give a description of what each title means. Would I give it as a "QToolTip", or a "QWhatsThis"? The following is an example in HTML of one of the Checkboxes. The part that says "<span Data-tooltip" is the part where I need help converting to Qt, and is the part where I'm confused on which widget to choose, either QToolTip or QWhatsThis.

    							<label class="checkbox">
    								<span data-tooltip="It is required by law that a wedding ceremony include a Declaration of Intent to marry between the two individuals electing to join in the marriage contract." This can be in the form of an "I Do", where the minister/officiant asks questions to the soon-to-be married couple beginning with "Do you", and in turn, the couple answers "I do". Or it can be in the form of an "I Will", where the minister/officiant asks questions to the soon-to-be married couple beginning with "Will you", and in turn, the couple answers "I will.".>
    									<input checked="checked" value="declarationOfIntent" id="elements-declaration-of-intent" type="checkbox">
    									Declaration of Intent
    								</span>
    							</label>
    


  • It is incredible how many people are helping Annabelle.... But why?



  • @mrdebug

    @mrdebug said in Qt Programming Language:

    It is incredible how many people are helping Annabelle.... But why?

    What makes you ask why? Is it because I'm confused on whose advice to take? There are so many answers, I can't seem to tell which one to choose first. I mean, one wants me to make wizard pages. One wants me to use the Qt Creator to make the program, when my screenreader can't access it. one wants me to look at books that are most likely either only available as a physical print copy, or as a format which can't be read by my screenreader. One tells me I should go to outside sources other than the Qt website to find answers. Now my mind is in a whirlpool!


  • Moderators

    @Annabelle Definitely don't use Qt Creator. If your screen reader doesn't support it that will just make things a lot harder.

    I have written Qt apps for about 16 years and never used Qt Creator. You definitely don't need it.

    As for what you need.. You said you need to be able to compile on the command line. Doing this is quite easy with Qt. First answer a couple questions for me and I can give you a complete step by step on how to get a program building. Once you can build a simple program, then you can worry about what goes into it like wizards and such.

    1. What operating system are you using?
    2. What compiler are you using? If windows is it visual studio or mingw? If linux it will probably be gcc, and if osx it will probably be clang. So mostly I just need to know in case of using windows.

    @mrdebug We're all helping because it is very inspiring to see someone who is blind trying to learn and do something so sight oriented. The challenge she faces seems almost insurmountable to me. I am willing to help everyone on these forums but some people just deserve that extra attention. :)



  • @ambershark said in Qt Programming Language:

    @Annabelle Definitely don't use Qt Creator. If your screen reader doesn't support it that will just make things a lot harder.

    I have written Qt apps for about 16 years and never used Qt Creator. You definitely don't need it.

    As for what you need.. You said you need to be able to compile on the command line. Doing this is quite easy with Qt. First answer a couple questions for me and I can give you a complete step by step on how to get a program building. Once you can build a simple program, then you can worry about what goes into it like wizards and such.

    1. What operating system are you using?
    2. What compiler are you using? If windows is it visual studio or mingw? If linux it will probably be gcc, and if osx it will probably be clang. So mostly I just need to know in case of using windows.

    @mrdebug We're all helping because it is very inspiring to see someone who is blind trying to learn and do something so sight oriented. The challenge she faces seems almost insurmountable to me. I am willing to help everyone on these forums but some people just deserve that extra attention. :)

    1. I think the compiler I have is Mingw.
    2. On one machine, I have Windows XP 32 Bit (I haven't upgraded that machine to Windows 7 64 Bit, as it would be $787 for a whole new machine, money I don't have right now.) On the machine on which I'm making my program's code, I have Windows 7 64 Bit.

Log in to reply