第4课 Hello QT
1. QT的安装
(1)双击:qt-opensource-windows-x86-mingw492-5.6.0.exe
(2)安装过程中指定QT Creator安装目录下的mingw文件夹
(3)设置环境变量:设安装在D:\QT\
①新建一个QTDIR的变量,其值为D:\Qt\5.6\mingw49_32\bin;D:\Qt\5.6\android_armv7\bin;D:\Qt\5.6\android_x86\bin;D:\Qt\Tools\QtCreator\bin,然后将该变量添加到Path中(%QTDIR%;……)
②添加变量QTLIB,并将其值设为D:\Qt\5.6\mingw49_32\lib; D:\Qt\Tools\QtCreator\lib
(4)设置关联
①运行:QT Creator
②工具→选项…→构建和运行
③选择:“Qt 版本”标签→手动设置→添加…→选择“D:\Qt\5.6\mingw49_32\bin\qmake.exe”
2. QT是什么
(1)QT是一套跨平台的GUI开发库
(2)QT是一套C++集成开发环境
(3)QT是一套开源的殿堂级架构技术教程
3. 通过命令行的方式编译QT源程序
(1)启动QT命令行
(2)进入源程序所在目录
(3)命令:
①qmake –project //根据目录中的源码生成工程文件
②qmake //根据工程文件生成makefile文件
③mingw32-make //根据makefile进行编译(旧版的用make编译)
【编程实验】编译和运行第一个QT程序
//main.cpp
#include <QApplication>
#include <QMainWindow>
#include <QPushButton> int main(int argc, char* argv[])
{
QApplication a(argc, argv);
QMainWindow w;
QPushButton b(&w); b.setText("Hello QT!"); w.show(); return a.exec();
}
▲用命令行编译的步骤▲
①qmake –project (注意:红色部分是手工加上去的!加上编译选项后会自动生成,qmake -project " QT += widgets")
######################################################################
# Automatically generated by qmake (3.0) ?? ? ::
######################################################################
QT += core gui greaterThan(QT_MAJOR_VERSION, 4): QT += widgets TEMPLATE = app
TARGET = HelloWorld
INCLUDEPATH += . # Input
SOURCES += main.cpp
②qmake 生成makefile
#############################################################################
# Makefile for building: HelloWorld
# Generated by qmake (3.0) (Qt 5.6.)
# Project: HelloWorld.pro
# Template: app
# Command: D:\Qt\5.6\mingw49_32\bin\qmake.exe -o Makefile HelloWorld.pro
############################################################################# MAKEFILE = Makefile first: release
install: release-install
uninstall: release-uninstall
QMAKE = D:\Qt\5.6\mingw49_32\bin\qmake.exe
DEL_FILE = del
CHK_DIR_EXISTS= if not exist
MKDIR = mkdir
COPY = copy /y
COPY_FILE = copy /y
COPY_DIR = xcopy /s /q /y /i
INSTALL_FILE = copy /y
INSTALL_PROGRAM = copy /y
INSTALL_DIR = xcopy /s /q /y /i
DEL_FILE = del
SYMLINK = $(QMAKE) -install ln -f -s
DEL_DIR = rmdir
MOVE = move
SUBTARGETS = \
release \
debug release: FORCE
$(MAKE) -f $(MAKEFILE).Release
release-make_first: FORCE
$(MAKE) -f $(MAKEFILE).Release
release-all: FORCE
$(MAKE) -f $(MAKEFILE).Release all
release-clean: FORCE
$(MAKE) -f $(MAKEFILE).Release clean
release-distclean: FORCE
$(MAKE) -f $(MAKEFILE).Release distclean
release-install: FORCE
$(MAKE) -f $(MAKEFILE).Release install
release-uninstall: FORCE
$(MAKE) -f $(MAKEFILE).Release uninstall
debug: FORCE
$(MAKE) -f $(MAKEFILE).Debug
debug-make_first: FORCE
$(MAKE) -f $(MAKEFILE).Debug
debug-all: FORCE
$(MAKE) -f $(MAKEFILE).Debug all
debug-clean: FORCE
$(MAKE) -f $(MAKEFILE).Debug clean
debug-distclean: FORCE
$(MAKE) -f $(MAKEFILE).Debug distclean
debug-install: FORCE
$(MAKE) -f $(MAKEFILE).Debug install
debug-uninstall: FORCE
$(MAKE) -f $(MAKEFILE).Debug uninstall Makefile: HelloWorld.pro D:/Qt/5.6/mingw49_32/mkspecs/win32-g++/qmake.conf D:/Qt/5.6/mingw49_32/mkspecs/features/spec_pre.prf \
D:/Qt/5.6/mingw49_32/mkspecs/qdevice.pri \
D:/Qt/5.6/mingw49_32/mkspecs/features/device_config.prf \
D:/Qt/5.6/mingw49_32/mkspecs/common/angle.conf \
D:/Qt/5.6/mingw49_32/mkspecs/qconfig.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_3dcore.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_3dcore_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_3dinput.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_3dinput_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_3dlogic.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_3dlogic_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_3dquick.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_3dquick_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_3dquickinput.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_3dquickinput_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_3dquickrender.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_3dquickrender_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_3drender.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_3drender_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_axbase.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_axbase_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_axcontainer.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_axcontainer_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_axserver.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_axserver_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_bluetooth.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_bluetooth_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_bootstrap_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_clucene_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_concurrent.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_concurrent_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_core.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_core_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_dbus.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_dbus_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_designer.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_designer_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_designercomponents_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_gui.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_gui_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_help.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_help_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_labscontrols_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_labstemplates_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_location.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_location_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_multimedia.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_multimedia_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_multimediawidgets.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_multimediawidgets_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_network.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_network_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_nfc.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_nfc_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_opengl.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_opengl_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_openglextensions.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_openglextensions_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_platformsupport_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_positioning.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_positioning_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_printsupport.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_printsupport_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_qml.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_qml_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_qmldevtools_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_qmltest.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_qmltest_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_quick.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_quick_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_quickparticles_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_quickwidgets.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_quickwidgets_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_script.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_script_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_scripttools.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_scripttools_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_sensors.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_sensors_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_serialbus.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_serialbus_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_serialport.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_serialport_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_sql.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_sql_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_svg.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_svg_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_testlib.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_testlib_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_uiplugin.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_uitools.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_uitools_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_webchannel.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_webchannel_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_websockets.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_websockets_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_widgets.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_widgets_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_winextras.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_winextras_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_xml.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_xml_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_xmlpatterns.pri \
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_xmlpatterns_private.pri \
D:/Qt/5.6/mingw49_32/mkspecs/features/qt_functions.prf \
D:/Qt/5.6/mingw49_32/mkspecs/features/qt_config.prf \
D:/Qt/5.6/mingw49_32/mkspecs/features/win32/qt_config.prf \
D:/Qt/5.6/mingw49_32/mkspecs/win32-g++/qmake.conf \
D:/Qt/5.6/mingw49_32/mkspecs/features/spec_post.prf \
D:/Qt/5.6/mingw49_32/mkspecs/features/exclusive_builds.prf \
D:/Qt/5.6/mingw49_32/mkspecs/features/default_pre.prf \
D:/Qt/5.6/mingw49_32/mkspecs/features/win32/default_pre.prf \
D:/Qt/5.6/mingw49_32/mkspecs/features/resolve_config.prf \
D:/Qt/5.6/mingw49_32/mkspecs/features/exclusive_builds_post.prf \
D:/Qt/5.6/mingw49_32/mkspecs/features/default_post.prf \
D:/Qt/5.6/mingw49_32/mkspecs/features/win32/rtti.prf \
D:/Qt/5.6/mingw49_32/mkspecs/features/precompile_header.prf \
D:/Qt/5.6/mingw49_32/mkspecs/features/warn_on.prf \
D:/Qt/5.6/mingw49_32/mkspecs/features/qt.prf \
D:/Qt/5.6/mingw49_32/mkspecs/features/resources.prf \
D:/Qt/5.6/mingw49_32/mkspecs/features/moc.prf \
D:/Qt/5.6/mingw49_32/mkspecs/features/win32/opengl.prf \
D:/Qt/5.6/mingw49_32/mkspecs/features/uic.prf \
D:/Qt/5.6/mingw49_32/mkspecs/features/win32/windows.prf \
D:/Qt/5.6/mingw49_32/mkspecs/features/testcase_targets.prf \
D:/Qt/5.6/mingw49_32/mkspecs/features/exceptions.prf \
D:/Qt/5.6/mingw49_32/mkspecs/features/yacc.prf \
D:/Qt/5.6/mingw49_32/mkspecs/features/lex.prf \
HelloWorld.pro \
D:/Qt/5.6/mingw49_32/lib/qtmain.prl \
D:/Qt/5.6/mingw49_32/lib/Qt5Widgets.prl \
D:/Qt/5.6/mingw49_32/lib/Qt5Gui.prl \
D:/Qt/5.6/mingw49_32/lib/Qt5Core.prl
$(QMAKE) -o Makefile HelloWorld.pro
D:/Qt/5.6/mingw49_32/mkspecs/features/spec_pre.prf:
D:/Qt/5.6/mingw49_32/mkspecs/qdevice.pri:
D:/Qt/5.6/mingw49_32/mkspecs/features/device_config.prf:
D:/Qt/5.6/mingw49_32/mkspecs/common/angle.conf:
D:/Qt/5.6/mingw49_32/mkspecs/qconfig.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_3dcore.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_3dcore_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_3dinput.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_3dinput_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_3dlogic.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_3dlogic_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_3dquick.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_3dquick_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_3dquickinput.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_3dquickinput_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_3dquickrender.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_3dquickrender_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_3drender.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_3drender_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_axbase.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_axbase_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_axcontainer.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_axcontainer_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_axserver.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_axserver_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_bluetooth.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_bluetooth_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_bootstrap_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_clucene_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_concurrent.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_concurrent_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_core.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_core_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_dbus.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_dbus_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_designer.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_designer_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_designercomponents_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_gui.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_gui_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_help.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_help_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_labscontrols_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_labstemplates_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_location.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_location_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_multimedia.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_multimedia_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_multimediawidgets.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_multimediawidgets_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_network.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_network_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_nfc.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_nfc_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_opengl.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_opengl_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_openglextensions.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_openglextensions_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_platformsupport_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_positioning.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_positioning_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_printsupport.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_printsupport_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_qml.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_qml_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_qmldevtools_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_qmltest.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_qmltest_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_quick.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_quick_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_quickparticles_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_quickwidgets.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_quickwidgets_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_script.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_script_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_scripttools.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_scripttools_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_sensors.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_sensors_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_serialbus.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_serialbus_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_serialport.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_serialport_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_sql.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_sql_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_svg.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_svg_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_testlib.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_testlib_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_uiplugin.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_uitools.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_uitools_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_webchannel.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_webchannel_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_websockets.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_websockets_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_widgets.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_widgets_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_winextras.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_winextras_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_xml.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_xml_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_xmlpatterns.pri:
D:/Qt/5.6/mingw49_32/mkspecs/modules/qt_lib_xmlpatterns_private.pri:
D:/Qt/5.6/mingw49_32/mkspecs/features/qt_functions.prf:
D:/Qt/5.6/mingw49_32/mkspecs/features/qt_config.prf:
D:/Qt/5.6/mingw49_32/mkspecs/features/win32/qt_config.prf:
D:/Qt/5.6/mingw49_32/mkspecs/win32-g++/qmake.conf:
D:/Qt/5.6/mingw49_32/mkspecs/features/spec_post.prf:
D:/Qt/5.6/mingw49_32/mkspecs/features/exclusive_builds.prf:
D:/Qt/5.6/mingw49_32/mkspecs/features/default_pre.prf:
D:/Qt/5.6/mingw49_32/mkspecs/features/win32/default_pre.prf:
D:/Qt/5.6/mingw49_32/mkspecs/features/resolve_config.prf:
D:/Qt/5.6/mingw49_32/mkspecs/features/exclusive_builds_post.prf:
D:/Qt/5.6/mingw49_32/mkspecs/features/default_post.prf:
D:/Qt/5.6/mingw49_32/mkspecs/features/win32/rtti.prf:
D:/Qt/5.6/mingw49_32/mkspecs/features/precompile_header.prf:
D:/Qt/5.6/mingw49_32/mkspecs/features/warn_on.prf:
D:/Qt/5.6/mingw49_32/mkspecs/features/qt.prf:
D:/Qt/5.6/mingw49_32/mkspecs/features/resources.prf:
D:/Qt/5.6/mingw49_32/mkspecs/features/moc.prf:
D:/Qt/5.6/mingw49_32/mkspecs/features/win32/opengl.prf:
D:/Qt/5.6/mingw49_32/mkspecs/features/uic.prf:
D:/Qt/5.6/mingw49_32/mkspecs/features/win32/windows.prf:
D:/Qt/5.6/mingw49_32/mkspecs/features/testcase_targets.prf:
D:/Qt/5.6/mingw49_32/mkspecs/features/exceptions.prf:
D:/Qt/5.6/mingw49_32/mkspecs/features/yacc.prf:
D:/Qt/5.6/mingw49_32/mkspecs/features/lex.prf:
HelloWorld.pro:
D:/Qt/5.6/mingw49_32/lib/qtmain.prl:
D:/Qt/5.6/mingw49_32/lib/Qt5Widgets.prl:
D:/Qt/5.6/mingw49_32/lib/Qt5Gui.prl:
D:/Qt/5.6/mingw49_32/lib/Qt5Core.prl:
qmake: FORCE
@$(QMAKE) -o Makefile HelloWorld.pro qmake_all: FORCE make_first: release-make_first debug-make_first FORCE
all: release-all debug-all FORCE
clean: release-clean debug-clean FORCE
distclean: release-distclean debug-distclean FORCE
-$(DEL_FILE) Makefile release-mocclean:
$(MAKE) -f $(MAKEFILE).Release mocclean
debug-mocclean:
$(MAKE) -f $(MAKEFILE).Debug mocclean
mocclean: release-mocclean debug-mocclean release-mocables:
$(MAKE) -f $(MAKEFILE).Release mocables
debug-mocables:
$(MAKE) -f $(MAKEFILE).Debug mocables
mocables: release-mocables debug-mocables check: first
FORCE: $(MAKEFILE).Release: Makefile
$(MAKEFILE).Debug: Makefile
③ming32-make 进行编译
4. QT Creator
(1)可视化的集成开发环境
①QT Creator提供了强大的代码编辑功能
②QT Creator提供了强大的调试功能
(2)调试的基本方法
①Log调试法:在代码加入一定的打印语句,打印程序状态和关键变量的值。
//包含头文件:#include <QDebug>
//调试输出:qDebug() << i; //在“应用程序输出”窗口中可观察输出的结果
②断点调试法:条件断点,如i == 7
【编程实验】QT Creator使用初体验(对上个项目进行调试,此处省略程序源码…)
5. 小结
(1)QT是一套跨平台的C++界面开发库
(2)可以通过命令行的方式开发QT应用程序
(3)也可以通过QT Creator进行QT开发
(4)QT Creator同时支持Log调试法和断点调试法
第4课 Hello QT的更多相关文章
- 第10课 初探 Qt 中的消息处理
1. Qt消息模型 (1)Qt封装了具体操作系统的消息机制 (2)Qt遵循经典的GUI消息驱动事件模型 2. 信号与槽 (1)Qt中定义了与系统消息相关的概念 ①信号(Signal):由操作系统产生的 ...
- 第30课 Qt中的文本编辑组件
1. 3种常用的文本编辑组件的比较 单行文本支持 多行文本支持 自定义格式支持 富文本支持 QLineEdit (单行文本编辑组件) Yes No No No QPlainTextEdit (多行普通 ...
- 第0课 - 搭建开发环境之安装QT
第0课 - 搭建开发环境之安装Qt 1. 课程学习的原材料 — Visual Studio 2010 — Qt SDK 4.7.4 — Qt Creator 2.4.1 2. Visual Studi ...
- 第54课 Qt 中的多页面切换组件
1. 多页面切换组件(QTabWidget) (1)能够在同一个窗口中自由切换不同页面的内容 (2)是一个容器类型的组件,同时提供友好的页面切换方式 2. QTabWidget的使用方式 (1)在应用 ...
- 第47课 Qt中的调色板
1. QPalette类 (1)QPalette类提供了绘制QWidget组件的不同状态所使用的颜色. (2)QPalette对象包含了3个状态的颜色描述 ①激活颜色组(Active):组件获得焦点使 ...
- 第39课 Qt中的事件处理(下)
1. 事件的传递过程 (1)操作系统检测到用户动作时,会产生一条系统消息,该消息被发送到Qt应用程序 (2)Qt应用程序收到系统消息后,将其转化为一个对应的QEvent事件对象,并调用QObject: ...
- 第38课 Qt中的事件处理(上)
1. GUI程序原理回顾 (1)图形界面应用程序的消息处理模型 (2)思考:操作系统发送的消息如何转变为Qt信号 2. Qt中的事件处理 (1)Qt平台将系统产生的消息转换为Qt事件 ①Qt事件是一个 ...
- 第32课 Qt中的文件操作
1. Qt的中IO操作 (1)Qt中IO操作的处理方式 ①Qt通过统一的接口简化了文件和外部设备的操作方式 ②Qt中的文件被看作一种特殊的外部设备 ③Qt中的文件操作与外部设备的操作相同 (2)IO操 ...
- 第11课 Qt中的字符串类
1. 历史遗留问题和解决方案 (1)历史遗留问题 ①C语言不支持真正意义上的字符串 ②C语言用字符数组和一组函数实现字符串操作 ③C语言不支持自定义类型,因此无法获得字符串类型 (2)解决方案 ①从C ...
随机推荐
- 解决Error: ENOENT: no such file or directory, scandir 安装node-sass报错
新项目开发需要安装依赖,但是安装完之后通过gulp运行项目,产生了一下的报错: 解决方案是执行一些方法: npm rebuild node-sass 可是有时就是网络问题导致上面命令安装失败,查下失败 ...
- DWZ 框架详解
这是一个智障的框架,能别用就别用.
- git add 的一点说明
git add --cached 这里 --cached是什么意思呢?要解释清楚这个问题,我们必须先了解一个文件在git中的状态. [commit]----[stage]-----[checkout] ...
- Tornado源码分析 --- 静态文件处理模块
每个web框架都会有对静态文件的处理支持,下面对于Tornado的静态文件的处理模块的源码进行分析,以加强自己对静态文件处理的理解. 先从Tornado的主要模块 web.py 入手,可以看到在App ...
- bzoj1054: [HAOI2008]移动玩具 状压+爆搜即可
题意:在一个4*4的方框内摆放了若干个相同的玩具,某人想将这些玩具重新摆放成为他心中理想的状态,规定移动时只能将玩具向上下左右四个方向移动,并且移动的位置不能有玩具,请你用最少的移动次数将初的玩具状态 ...
- openv+contrib配置总结
本文转载于:https://www.cnblogs.com/wjy-lulu/p/6805557.html 开门见山的说:别用opencv3.0,这个版本添加扩展库不怎么好,能不能成功我不敢说,我是试 ...
- 原生javascript-图片滚动按需加载
图片滚动按需加载:在某个区域的图片(自定义的范围,一般是首屏以下的区域),拉动滚动,图片出现在可视范围才开始加载,目的是减少请求,减耗宽带,提高首屏的呈现速度,让用户第一时间看到网页内容,留下美好的第 ...
- PHP和JAVA整合开发的三个方案(六)
php作为前端开发,java负责后台开发,这样取长补短的方案很适合现在web开发.现在PHP和JAVA整合开发比较好的方案只有3个:1.SOAP2.php-java-bridge3.Quercus Q ...
- 从 TWAIN 设备中扫描图像
转自(http://yonsm.net/scan-images-from-a-twain-device/) 一.简介 TWAIN 数据源管理程序 (DSM) 工业标准的软件库,用于从静态图像设备提取图 ...
- mysql 索引原理及查询优化
一 介绍 为何要有索引? 一般的应用系统,读写比例在10:1左右,而且插入操作和一般的更新操作很少出现性能问题,在生产环境中,我们遇到最多的,也是最容易出问题的,还是一些复杂的查询操作,因此对查询语句 ...