Files
scuc-qt-course/docs/teaching/examples/mainwindow_showcase/CMakeLists.txt
T
张宗平 d3e2e50f0e mainwindow_showcase 教学示例:补 Designer 双版本表单(mainwindow2)+ 表单维护
- 新增 mainwindow2.{h,cpp,ui}:用 Qt Designer 生成的第二套 QMainWindow 表单
  (File/Edit/Help 菜单 + actionOpen/actionAbout_Me),供课堂对比「代码搭界面」
  与「Designer 拖界面」两条路线。
- 新增子目录 CMakeLists.txt:供单独打开该示例构建(顶层 add_subdirectory 不递归,
  与 lineedit_eye_toggle / mandelbrot_renderer 同模式)。
- mainwindow.ui / mainwindow.qrc:经 Designer 重新保存后的表单与资源清单维护
  (iconset 去掉 resource= 显式引用、属性顺序由 Designer 重排)。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-09 16:51:33 +08:00

52 lines
1.3 KiB
CMake

cmake_minimum_required(VERSION 3.5)
project(qt_mainwindow_showcase LANGUAGES CXX)
set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
# QtCreator supports the following variables for Android, which are identical to qmake Android variables.
# Check http://doc.qt.io/qt-5/deployment-android.html for more information.
# They need to be set before the find_package(Qt5 ...) call.
#if(ANDROID)
# set(ANDROID_PACKAGE_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/android")
# if (ANDROID_ABI STREQUAL "armeabi-v7a")
# set(ANDROID_EXTRA_LIBS
# ${CMAKE_CURRENT_SOURCE_DIR}/path/to/libcrypto.so
# ${CMAKE_CURRENT_SOURCE_DIR}/path/to/libssl.so)
# endif()
#endif()
find_package(Qt5 COMPONENTS Widgets REQUIRED)
if(ANDROID)
add_library(qt_mainwindow_showcase
main.cpp
mainwindow_showcase.cpp
mainwindow_showcase.h
mainwindow2.cpp
mainwindow2.h
mainwindow2.ui
mainwindow.ui
)
else()
add_executable(qt_mainwindow_showcase
main.cpp
mainwindow_showcase.cpp
mainwindow_showcase.h
mainwindow2.cpp
mainwindow2.h
mainwindow2.ui
mainwindow.ui
mainwindow.qrc)
endif()
target_link_libraries(qt_mainwindow_showcase PRIVATE Qt5::Widgets)