Qt Programming Language
-
@Annabelle
I am sure you are more knowledgeable about screen readers and braille displays than I am, however if you are using Windows 10, do the Windows Narrator and the braille drivers not work for you?
Also you can set up your own short cuts for QtCreator and on windows the menu items do have alt key access.
Since Qt has classes for adding Accessibility to applications I am assuming that QtCreator follows best practices in this matter. You can always ask the developers about that directly by asking them on the mailing list here -
@kenchan said in Qt Programming Language:
@Annabelle
I am sure you are more knowledgeable about screen readers and brail displays than I am, however if you are using Windows 10, do the Windows Narrator and the braille drivers not work for you?
Also you can set up your own short cuts for QtCreator and on windows the menu items do have alt key access.
Since Qt has classes for adding Accessibility to applications I am assuming that QtCreator follows best practices in this matter. You can always ask the developers about that directly by asking them on the mailing list hereWindows 10? I'm actually using Windows 7. Specifically Windows 7 Professional 64 Bit with JAWS 15.
-
@Annabelle
Ah, well that is a shame. I have not used Windows 7 for years so I don't know if it had Narrator and braille drivers.
The QtCreator menu shortcuts should be the same though.
So the issue with your JAWS thingy is that it can't read the QtCreator menu items and controls or it can't work with your braille device or both? -
@kenchan said in Qt Programming Language:
@Annabelle
Ah, well that is a shame. I have not used Windows 7 for years so I don't know if it had Narrator and braille drivers.
The QtCreator menu shortcuts should be the same though.
So the issue with your JAWS thingy is that it can't read the QtCreator menu items and controls or it can't work with your braille device or both?I don't have my Braille device installed on this machine. As far as the menu items, if they're image-based, then JAWS can't read them. It only reads icons that are text-based. Same goes for Narrator, as well as NVDA (Non Visual Desktop Access), yet another screenreader.
-
@Annabelle said in Qt Programming Language:
I have Qt Creator on my machine, and JAWS only seems to recognize a few components, for example, the opening screen with the Project Treeview. I wonder what I might be doing wrong. Also, Qt Creator doesn't have the kind of menu bar that you can access with the Alt Key or the Applications key. At least not that I know of.
I turned on Windows 10 Narrator and opened Qt Creator. When I pressed the Alt key, the menu was activated and Windows Narrator said, "File. Menu Item. Menu Keyboard and F". After that, I pressed the Tab key. The next menu item was selected and Windows Narrator said, "Edit. Menu Item. Menu Keyboard and E".
Could you try again? Press Alt then Tab. After that, press the Escape key to leave the menu, then try pressing Alt then F.
It seems you would have to have sighted help to click on whatever parameter you want, like a button or a checkbox, to insert it into a project. What's up with that, I wonder? I wish Qt Creator would have a menu you could access with a keyboard shortcut, that lists all the possible parameters you can insert into your project.
It sounds like you had opened the visual editor for creating graphical user interfaces (GUI). This editor is optional; you can create a GUI using text code alone.
-
@Annabelle
I see that the NVDA screen reader cannot read the icon menus that start from the top on the left hand side of the QtCreator main window. I guess this is the problem you have seen with QtCreator? That left most panel is called the Mode Selector and you can close it if is too noisy for your screen reader.
Maybe you could ask the QtCreator developers to make that panel more accessible to screen readers?
On the whole though it looks like most of the menus should work with a screen reader (I tried it with NVDA but did not test every menu though). -
@kenchan said in Qt Programming Language:
@Annabelle
I see that the NVDA screen reader cannot read the icon menus that start from the top on the left hand side of the QtCreator main window. I guess this is the problem you have seen with QtCreator? That left most panel is called the Mode Selector and you can close it if is too noisy for your screen reader.
Maybe you could ask the QtCreator developers to make that panel more accessible to screen readers?
On the whole though it looks like most of the menus should work with a screen reader (I tried it with NVDA but did not test every menu though).Mode Selector? I'm confused! Also, how would I put things like checkboxes and combo boxes into a project with Qt Creator? Is there a screenreader-friendly menu that lets you select the parameters you'd like to incorporate into a new project?
-
@Annabelle
Well, I think you will have that problem with any of the IDE tools available as they all basically do things in the same way. Dragging and dropping GUI elements onto the screen is probably quite a difficult thing to with the assistance of a screen reader. You can however create GUIs without using the graphical interface designer by just programming them directly with code yourself. There is much more coding to be done but many people do it that way. -
@kenchan said in Qt Programming Language:
@Annabelle
Well, I think you will have that problem with any of the IDE tools available as they all basically do things in the same way. Dragging and dropping GUI elements onto the screen is probably quite a difficult thing to with the assistance of a screen reader. You can however create GUIs without using the graphical interface designer by just programming them directly with code yourself. There is much more coding to be done but many people do it that way.When I finish the code, I'm wondering what compiler I could use that would be completely accessible for me. Coding in C++ is what I'm learning through www.learncpp.com, and the IDE part is where I'm stuck in a rut.
-
@Annabelle said in Qt Programming Language:
Coding in C++ is what I'm learning through www.learncpp.com, and the IDE part is where I'm stuck in a rut.
Read my post from yesterday. Windows Narrator reads out the Alt menus for me. Does JAWS say anything when you press and release Alt, then press and release Tab in Qt Creator?
Also, what version of Qt Creator did you install? (You can check by pressing and releasing keys in this order: Escape, Alt, H, Q)
-
@JKSH said in Qt Programming Language:
@Annabelle said in Qt Programming Language:
Coding in C++ is what I'm learning through www.learncpp.com, and the IDE part is where I'm stuck in a rut.
Read my post from yesterday. Windows Narrator reads out the Alt menus for me. Does JAWS say anything when you press and release Alt, then press and release Tab in Qt Creator?
Also, what version of Qt Creator did you install? (You can check by pressing and releasing keys in this order: Escape, Alt, H, Q)
Qt Creator 4.7.0 based on Qt 5.11.1 MSVC 2015. As for Windows Narrator, it announces most stuff as "Unknown" or "Unknown Key". What's up with that, I wonder?
-
@Annabelle said in Qt Programming Language:
Qt Creator 4.7.0 based on Qt 5.11.1 MSVC 2015.
OK, that's a good recent version.
As for Windows Narrator, it announces most stuff as "Unknown" or "Unknown Key". What's up with that, I wonder?
Do you mean Windows Narrator announces them as "Unknown", while JAWS doesn't announce them at all?
-
@JKSH said in Qt Programming Language:
@Annabelle said in Qt Programming Language:
Qt Creator 4.7.0 based on Qt 5.11.1 MSVC 2015.
OK, that's a good recent version.
As for Windows Narrator, it announces most stuff as "Unknown" or "Unknown Key". What's up with that, I wonder?
Do you mean Windows Narrator announces them as "Unknown", while JAWS doesn't announce them at all?
Yes, that's exactly what I mean.
-
@Annabelle said in Qt Programming Language:
As for Windows Narrator, it announces most stuff as "Unknown" or "Unknown Key". What's up with that, I wonder?
Do you mean Windows Narrator announces them as "Unknown", while JAWS doesn't announce them at all?
Yes, that's exactly what I mean.
OK, I managed to load an old machine which runs Windows 7 Enterprise SP1, and I installed Qt Creator 4.7.0 on it. I launched the Microsoft Narrator that came bundled with Windows 7. I used its default settings: "Echo User's Keystrokes" and "Announce System Messages".
Here is what I did and what I heard:
- When I launched Qt Creator, Microsoft Narrator said, "Window opened. Quartz Creator."
- When I pressed Alt, Microsoft Narrator said, "Alt. File. Menu Item. Menu key Alt plus 'F'. Menu bar with 8 items."
So Qt Creator 4.7.0 should be accessible to screenreaders on Windows 7. I can't understand why your copy of Microsoft Narrator only reads "Unknown".
In your community, are there any programmers or folks who are knowledgeable with computers? It could be worth getting their assistance. I'm afraid that our ability to help you through an online forum is quite limited.
-
@JKSH I've switched from Visual Studio to Codeblocks, since that particular IDE:
- Didn't take forever to install on my machine.
- Didn't require any further Windows updates.
- Didn't require a Microsoft account or any other account to use.
- Doesn't take up much room on my machine.
- It's more accessible to screenreaders than Visual Studio or Qt Creator.
That being said, out of curiosity, if I was to code a Qt project with Codeblocks, is it possible that the code I make would be translated into the actual elements like buttons, checkboxes, sliders, textboxes, radio buttons, text areas, combo boxes, and the like? I know that in Codeblocks, each type of project has an Editor window, so if I focus on that, I would be able to put the code in there, then compile the finished project. I've even registered with the forum at http://www.cplusplus.com, but the people there told me that C++ isn't exactly the language for making GUI elements, and that something like Qt would be a framework for those. I did, however, manage to create a "Hello World" project in C++ with Codeblocks. How would I share that on this forum?
-
Hi @Annabelle,
You've taken many good initiatives to learn C++; well done.
I've switched from Visual Studio to Codeblocks, since that particular IDE:
- Didn't take forever to install on my machine.
- Didn't require any further Windows updates.
- Didn't require a Microsoft account or any other account to use.
- Doesn't take up much room on my machine.
- It's more accessible to screenreaders than Visual Studio or Qt Creator.
These are good reasons to use the Code::Blocks IDE.
Out of curiosity, if I was to code a Qt project with Codeblocks, is it possible that the code I make would be translated into the actual elements like buttons, checkboxes, sliders, textboxes, radio buttons, text areas, combo boxes, and the like?
Yes. Each GUI element in Qt is represented by a C++ object. So, if you want to create a button, all you have to do is to write code that constructs a
QPushButton
object, and then call a function to make it visible on the screen.This process is completely independent of the IDE. Regardless of whether you use Qt Creator or Visual Studio or Code::Blocks, the code you write to create the Qt button would be exactly the same.
I know that in Codeblocks, each type of project has an Editor window, so if I focus on that, I would be able to put the code in there, then compile the finished project.
Have you managed to compile and run a Hello World project in Code::Blocks yet?
I've even registered with the forum at http://www.cplusplus.com, but the people there told me that C++ isn't exactly the language for making GUI elements, and that something like Qt would be a framework for those.
They are correct in a sense. The C++ language itself does not have the concept of GUIs. Nonetheless, Qt is a C++ library that enables you to write C++ code to create GUIs.
I did, however, manage to create a "Hello World" project in C++ with Codeblocks. How would I share that on this forum?
To share a small project, just copy your C++ code from the Code::Blocks Editor and paste them into this forum. The C++ code is all text.
-
@JKSH said in Qt Programming Language:
Hi @Annabelle,
You've taken many good initiatives to learn C++; well done.
I've switched from Visual Studio to Codeblocks, since that particular IDE:
- Didn't take forever to install on my machine.
- Didn't require any further Windows updates.
- Didn't require a Microsoft account or any other account to use.
- Doesn't take up much room on my machine.
- It's more accessible to screenreaders than Visual Studio or Qt Creator.
These are good reasons to use the Code::Blocks IDE.
Out of curiosity, if I was to code a Qt project with Codeblocks, is it possible that the code I make would be translated into the actual elements like buttons, checkboxes, sliders, textboxes, radio buttons, text areas, combo boxes, and the like?
Yes. Each GUI element in Qt is represented by a C++ object. So, if you want to create a button, all you have to do is to write code that constructs a
QPushButton
object, and then call a function to make it visible on the screen.This process is completely independent of the IDE. Regardless of whether you use Qt Creator or Visual Studio or Code::Blocks, the code you write to create the Qt button would be exactly the same.
I know that in Codeblocks, each type of project has an Editor window, so if I focus on that, I would be able to put the code in there, then compile the finished project.
Have you managed to compile and run a Hello World project in Code::Blocks yet?
I've even registered with the forum at http://www.cplusplus.com, but the people there told me that C++ isn't exactly the language for making GUI elements, and that something like Qt would be a framework for those.
They are correct in a sense. The C++ language itself does not have the concept of GUIs. Nonetheless, Qt is a C++ library that enables you to write C++ code to create GUIs.
I did, however, manage to create a "Hello World" project in C++ with Codeblocks. How would I share that on this forum?
To share a small project, just copy your C++ code from the Code::Blocks Editor and paste them into this forum. The C++ code is all text.
When I attempt to compile the Hello World project in Codeblocks, I get this error.
What did I do wrong? -
@Annabelle Did you install MinGW? If so, is c:\MinGW\bin\gcc.exe valid path pointing to the C compiler?
-
@jsulm said in Qt Programming Language:
@Annabelle Did you install MinGW? If so, is c:\MinGW\bin\gcc.exe valid path pointing to the C compiler?
- Yes.
- Yes.
And now when I try to build and run, I get this error.
-
@Annabelle said in Qt Programming Language:
And now when I try to build and run, I get this error.
I don't have experience with Code::Blocks, so my ability to help you is a bit limited. Nonetheless, my guess is that you installed Code::Blocks first, and then you downloaded MinGW from a different place. Is this correct? If so, there is likely a configuration problem.
The cleanest way forward is probably to:
- Uninstall Code::Blocks
- Uninstall MinGW
- Download the single package which sets up both for you. Select codeblocks-17.12mingw-setup.exe from http://www.codeblocks.org/downloads/26
If you still have issues after all of this, the folks at the Code::Blocks forum might be better able to help you: forums.codeblocks.org/