 Everything we've been doing up to this point inevitably leads to controls. We've actually built our own components or controls using a rectangle and a mouse area. We've actually built like a generic button, but there's really no point in reinventing the wheel. I wanted to show you how you can build something from the ground up, but a lot of this is already pre-built for you, and they're called QtQuick controls. Notice it's QtQuick, not QtQML controls. QtML is the language and QtQuick is the framework which has all the controls in it. Looking at the documentation, it's a little bit sparse. Qt's usually world renowned for the documentation, but in this area it's a little bit lacking. Some prerequisites, you have to import the controls and the specific version. That's one of the little gotchas because the controls do change from version to version. Sometimes that changes drastic, sometimes it's barely noticeable. You also have to, on the C++ side, if you're going to use that, use the QtQuick controls too, and you have to add the actual libraries. A lot of that's done for you automatically. Versioning's kind of a hot issue. Versioning is going away in Qt6. Now when I say going away, it's actually going to be a little bit simpler. This is how you would import in Qt5. Notice it's import, what you're importing, and the version. In Qt6, from what I've heard, it's just going to be import and then whatever you're importing. You leave the version off. So that's a change that's going to happen once Qt6 is released and I'm going to re-record all these videos for Qt6 into a complete new course when it comes out. I just wanted you to be aware. Scrolling down, there is a lot you can do with this. The topics are actually pretty good. They go from general guidelines and stylings, icons, high DPI support, so on and so on. It goes into some pretty cool examples. For example, the gallery, a text editor, automotive example, music player, and so on. Now, these examples, while really good, also come with the caveat that you kind of need to know what you're doing before you dive into the example, which is, well, the chicken or the egg problem. Here is the automotive example, and this is a really cool example. It kind of simulates an in-dash display, and you can do something all the way up to, for example, a music player. Again, these are very advanced examples, and you kind of have to get out of basic land, which we're in basics right now, just to understand what they're talking about. Otherwise, when you look at these examples, you're going to be pretty lost. So the example we're going to use in this video is very simple. We're just going to import the controls and drag and drop some onto a window. We have a dial. We have a progress indicator, a checkbox, and a delay button. Let's take a look and see what it takes to make this happen here. All right, first things first, I'm going to flip into the design view. I'm going to go to the imports tab and click down. And you see there's Qt Quick Controls 2.3. I'm going to click that and it adds it. As soon as it adds it, you can go to the types and you have the controls available. One special note, if we flip in and we go here and just hit dot, you notice there are versions higher than three. Qt does its best to figure out what's going on. Sometimes you may need, say, a specific version. I'm just going to leave it as three. And let's go ahead and drag and drop some controls on here. So we're just going to drag this in here. And the busy indicator, let's say I want to put that dead center, save and run. Let's see what that looks like. Ta-da! One of the little gotchas is sometimes it won't appear in the designer, but it appears in the window. It's actually there, it's just not currently running. Kind of weird how that works. Let's take a look at the dial and I'm going to just scale this down. Checkbox and we have buttons and delay buttons. So really what's the difference here? A button is similar to what we've made. Where a delay button, you can actually click and hold it down. And let's take a look at this example here. Here's our dial, our progress, our checkbox, and our delay button. What's up, everybody? This is Brian. I hope you enjoyed this video. It's part of a larger series out on udemy.com called QML for Beginners. The QML for Beginners course assumes you know absolutely zero QML. You're just starting off and it's designed specifically for Qt 5. I will re-record the entire series when Qt 6 comes out and just know that it's over 100 videos and 13 and a half hours of video on demand. I'll put a link below so you can get a highly discounted rate. And before you dive in, just understand, it covers a lot more than what I can put into this list. Everything from what's QML to animations to C++ integration, JavaScript, and on and on and on. But one of the requirements up front is you have to know Qt Core. You should have some C++ under your belt and be very familiar with Qt 5. In case you have none of that, I do have some courses for Qt Core Beginners, intermediate and advanced out on udemy as well. Hope to see you there.