Як створити підкаталог для проекту QtCreator?


102

Я хотів би поділити свій проект Qt на кілька каталогів, оскільки він зростає досить великим. Однак, коли я натискаю на перегляд у QtCreator, у "Додати нове" немає "Додати каталог", а такого немає. Чи можна це зробити якось?


Що не так у створенні підкаталогу з вашим файловим менеджером?
Арія Хідаят

2
Я можу створювати dirs вручну, але я не бачу їх тоді в браузері проекту.
gruszczy

5
@Ariya Ви мали б принаймні проголосувати за це, оскільки ця функція доступна у більшості ІДЕ, і люди будуть запитувати про неї.
Пьотр Доброгост

49
З усією повагою, але Qt-Creator затримує зручність використання (щодо користувальницького інтерфейсу). Як розробник, якщо ви бачите, що хтось повинен запитати, як додати підкаталог до проекту на публічному форумі, то ви знаєте, що з цим є серйозна проблема ІДЕ.
Еденшо

4
@GabrielF досить легко ...? це виправлено ...? Чому ми не можемо просто вибрати «створити каталог» (або «додати каталог», щоб бути в дусі Creator), як у більшості IDE. Це основний функціонал, який мають навіть більшість шалених редакторів - ви можете створити каталог у блокноті! Не повинно бути "методу" для виконання такого простого, основного завдання - це повинно бути очевидним.
doc

Відповіді:


40

Один із методів, який ви можете використовувати, - це додати файл, що включає проект, для кожного підкаталога.

Qt Creator відображає їх у графічному інтерфейсі вкладеним способом і дозволяє додавати до них файли.

напр

у project.pro

include(folder1/include.pri)

у папці1 / include.pri

HEADERS += MyClass.h
SOURCES += MyClass.cpp

тощо


Чи можу я зробити це введення в IDE або мені доведеться вручну встановлювати ці файли та файли?
gruszczy

1
Я швидко ознайомився, і я думаю, що вам потрібно додати файли включення вручну, але при додаванні нових файлів до проекту Qt Creator дозволить вам додати їх до файлу включення, а не до основного файлу проекту.
Нік

3
Добре, сподіваємось, вони додадуть цю функцію в новій версії.
gruszczy

2
Будь ласка , зверніть увагу моя відповідь: stackoverflow.com/questions/24959959 / ...
Erowlin

24

Відповідь: Як створити папку або підкаталог для проекту в QtCreator?

Перед QT Creator 3.1.x ви можете клацнути правою кнопкою миші на своєму проекті -> " додати нове ... " та змінити шлях до потрібної папки.

Qt додати нове ...

Папка повинна існувати , Qt не створить її для вас.

Додайте новий клас та змініть папку за замовчуванням Qt

Qt піклується про шлях у вашому файлі .pro.

Qt піклується про шлях у вашому файлі .pro

Qt піклується про шлях у вашому файлі .pro

Це воно !


1
Слід зазначити, що це не буде працювати при використанні проектів CMake в QtCreator.
Етьєнн

@ Етьєн, ти маєш рацію. Не працює. Що нам робити в цьому випадку?
pushandpop

20

Просто було те саме питання і з'ясували порівняно просту відповідь.

Все , що вам потрібно зробити , щоб перейти file.cppна newFolderце перейменувати файл (правою кнопкою миші -> Rename) вnewFolder\file.cpp .

Qt Creator перемістить його у нову папку та автоматично оновить .proфайл.


3
не забувайте, що папка повинна існувати до заміни
Антон

2
Якщо переміщений файл знаходиться під контролем GIT, чи створювач Qt також подбає про необхідні зміни в GIT?
Силікоманс

@Silicomancer Git обробляє переміщені файли для вас, а не Qt Creator. Вам нічого не потрібно робити, крім переміщення файлу за допомогою описаного обходу (за допомогою "перейменування") у Qt Creator. Якби ви переміщували файл просто у файловій системі, Git розпізнавав би це, але шлях до файлу не буде коригуватись у .PROфайлі Qt Creator ...
R Yoda

@Silicomancer Так. Якщо qtreacor визнає, що проект виконаний з git, він повторює всі дії. Це включає щонайменше створення файлів, видалення, перейменування та переміщення файлів.
Рівновага

9

Починаючи з версії 1.2.90 Qt Creator показує підпапки, які існують у папці проекту, як гілки в дереві проекту, якщо для параметра " Дерево фільтра " не встановлено значення " Спростити дерево" .


7

Створювати підкаталоги в QT-CREATOR видається неможливим.

Спробуйте наступне:

  1. Створіть ряд підкаталогів, за допомогою файлового провідника або командного рядка в папці проекту (наприклад, net / , gui / , test / , data / ...)!
  2. Перемістіть наявні файли в ці нові папки. І змінити їх контури у файлі * .proj !
  3. Створюйте нові файли з початку в нових папках (За AddNew ... )!

... QT-CREATOR відображає лише такі папки, які містять файли, записані з їх іменами, у файл * .pro або * .pri. На рівні коренів QT-CREATOR розрізняє ГОЛОВНИКИ, ДЖЕРЕЛА, ФОРМИ та ІНШІ ФАЙЛИ. У цих кореневих папках ви можете неодноразово знаходити власні підпапки проекту. (Не охоплений цим текстом розбивається на підпроекти.)


Правда. Якщо проект Qt переглядається всередині Qt Creator, а priпроекти s використовуються належним чином, IDE відображає речі у вкладеному вигляді. Однак на рівні файлової системи всі файли (крім випадків використання subdirта створення підпроектів) знаходяться на одному рівні ієрархії каталогів. Це робить речі досить обтяжливими, коли хтось дивиться на проект у файловому провіднику (Windows Explorer, Thunar, Nautilus тощо). Якщо потрібна відповідна структура файлів, то робити це вручну (як це пропонує @CWIMMER) - єдиний шлях.
rbaleksandar

3

Ви можете створити підкаталог, якщо у вас є файл, який ви хочете створити в ньому. Перейдіть до батьківського каталогу та "Додати" файл до нього. "Огляд" місця та створення нової папки всередині вікна перегляду. Домовились, це не зовсім інтуїтивно.


3

Коли ви створюєте новий клас у своєму Qt-Project, ви можете обрати шлях до цього майстра і цим чином вказати нові папки, такі як DAL, BO, UI, ...


0

Коли в моєму каталозі "дані" була лише одна модель "підкаталога", вона просто з'явилася як "дані / модель". Після додавання "дао" як іншого підкаталогу він відображав дані традиційним способом +/- для виявлення моделі та дао.


0

Ось що я зробив:

  1. У папці проекту (за межами IDE) створіть каталоги, в які ви хочете ввести свій код, і перемістіть вихідні файли в ці каталоги.

    • Скажіть, ви помістили "foo.cpp" і "foo.h" у каталог "foo".
  2. У файлі "* .pro" перейдіть до кожного рядка, в якому посилаються на вихідні файли, які ви перемістили, і додайте ім'я каталогу, а потім "/" перед іменем вихідного файлу.

.pro перед кроком 2:

SOURCES += main.cpp \
foo.cpp

HEADERS  += \
foo.h \

.pro після кроку 2:

SOURCES += main.cpp \ 
foo/foo.cpp

HEADERS += \
foo/foo.h
  1. Перебудуйте свій проект для тестування.
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.