Home

Awesome

Mastering Qt 5 - Second Edition (August 2018)

<a href="https://www.packtpub.com/web-development/mastering-qt-5-second-edition"><img src="https://github.com/PacktPublishing/Mastering-Qt-5-Second-Editon/blob/master/media/mastering-qt5-2nd_cover.jpg?raw=true" alt="" width="300" height="370" align="right"></a>

This is the code repository for Mastering Qt 5 - Second Edition, published by Packt.

Create stunning cross-platform applications using C++ with Qt Widgets and QML with Qt Quick

Book editions

What is this book about?

Qt 5.11 is an app development framework that provides a great user experience and develops full capability applications with Qt Widgets, QML, and even Qt 3D. Whether you're building GUI prototypes or fully-fledged cross-platform GUI applications with a native look and feel, Mastering Qt 5 is your fastest, easiest, and most powerful solution. This book addresses various challenges and teaches you to successfully develop cross-platform applications using the Qt framework, with the help of well-organized projects.

This book covers the following exciting features:

If you feel this book is for you, get your copy today!

<a href="https://www.packtpub.com/?utm_source=github&utm_medium=banner&utm_campaign=GitHubBanner"><img src="https://raw.githubusercontent.com/PacktPublishing/GitHub/master/GitHub.png" alt="https://www.packtpub.com/" border="5" /></a>

Errata

Official Packt errata page is https://www.packtpub.com/books/content/support/33683

Chapter 2

Chapter 3

Chapter 4

Chapter 5

Instructions and Navigations

All of the code is organized into folders. For example, Chapter02.

The code will look like the following:

void MemoryWidget::updateSeries()
{
    double memoryUsed = SysInfo::instance().memoryUsed();
    mSeries->append(mPointPositionX++, memoryUsed);
    if (mSeries->count() > CHART_X_RANGE_COUNT) {
        QChart* chart = chartView().chart();
        chart->scroll(chart->plotArea().width()
            / CHART_X_RANGE_MAX, 0);
        mSeries->remove(0);
    }
}

Following is what you need for this book: Mastering Qt 5 is for developers and programmers who want to build GUI-based applications. C++ knowledge is necessary, and knowing Qt basics will help you get the most out of this book.

With the following software and hardware list you can run all code files present in the book (Chapter 1-14).

Software and Hardware List

ChapterSoftware and Hardware requiredOS required
1 to 14Qt 5.11, Xcode, Android SDK, RaspbianWindows, Mac OS X, and Linux (Any)
5 and 13Xcode, Android SDKWindows, Mac OS X, and Linux (Any)
6Raspbian, Raspberry Pi 3Windows, Mac OS X, and Linux (Any)

Related products <Other books you may enjoy>

Get to Know the Authors

Guillaume Lazar is a software engineer living in France near Paris. He has worked in different companies, from startups to multinationals, in the last 10 years. He took the opportunity to observe and learn many team organizations and technologies.

In 2014, he founded his own software development company at the age of 27. The current hierarchical organization that applies to most companies seems obsolete to him. With his own company, he wants to try a different approach.

Although he defines himself as a Qt framework lover, he likes to mix different technologies and platforms. He also spends time on game development, machine learning, and electronics, because "things" become "alive".

Robin Penea has been working in the software industry for a more than a decade. He worked in startups and large companies with many technologies that ranged from embedded software to web development. Armed with this experience, he wrote the Mastering Qt 5 book to spread what he loves the most about the programming craft : proper design and quality code.The teaching bug has bitten him, and he continues to share what he learned online using videos. When he is not tinkering with some new technology, he either on a wall, rock-climbing or playing music on his piano. You can reach him via Twitter @synapticrob.

Other books by the authors

Suggestions and Feedback

Click here if you have any feedback or suggestions.