Название: Механика создания класса формы Qt Designer Отправлено: makar182 от Август 21, 2014, 15:57 Добрый день, форумчане
После автоматического создания класса формы Qt Designer, типичный заголовочный файл формы выглядит так: myDialog.h Код: #ifndef MYDIALOG_H Объясните, пожалуйста, для чего мы записываем имя класса в пространство имен "UI" Код: namespace Ui { И почему, создавая новый член класса, мы используем вызов с указанием пространства имен? Код: private: Конечно, можно на это не обращать внимания, создалось и слава Богу, но все же хотелось бы понять, откуда такая нужда? Название: Re: Механика создания класса формы Qt Designer Отправлено: Igors от Август 21, 2014, 16:14 Не нужда а умность (в хорошем смысле). Пространство имен Ui подчеркивает что все в нем может быть изменено интерактивно, в дызайнере. Написав Ui:: мы четко видим что это привязано к форме (той самой). Хорошо это или плохо - то по-всякому, но выделить это необходимо.
Как дела? Нашли заказ или так, тренируетесь на кошках (неэффективно :)) Название: Re: Механика создания класса формы Qt Designer Отправлено: makar182 от Август 21, 2014, 17:05 Цитировать Как дела? Нашли заказ или так, тренируетесь на кошках (неэффективно Улыбающийся) Закончил разбирать лекции Nokia для начинающих, что-то новое узнал, но проблема в том, что те лекции выложены отрывками. Нашел в интернете архив видеоуроков от какого-то парня. Уроки хорошие, чисто практические, то, что нужно. Эти занятия -последний рубеж перед полноценной практикой (в принципе начав эти уроки я и начал хоть какую-то практику). Заказов еще не брал, потому, что я откровенно путаюсь в базовых вещах и зачастую не могу разобрать всплывающую схему написания той или иной команды ;D Так что, решил сейчас повторить все за ведущим этого курса (курс достаточно полный и краткий) вручную, а потом написать свою собственную простенькую программу - записную книжку с напоминаниями или вроде того, а там дальше посмотрим. Вобщем, надо что-то сделать от А и до Я, чтобы почувствовать себя уверенно и просить заказы :), а то сейчас я их только завалю. Да и, по правде говоря, никто не откликнулся на предложение бесплатного сотрудника (я его тут же на форуме размещал). А на сайтах фриланса, как пить дать, попросят портфолио и т.п. Название: Re: Механика создания класса формы Qt Designer Отправлено: Bepec от Август 21, 2014, 18:12 На деле есть 2 варианта объявления UI.
Креатор делает через namespace в h-нике. Addin использует namespace из ui_*.h файла. Вот пример из аддина Код: #include "ui_extensionsorter.h" Мне больше нравится второй вариант - отсутствует непонятное объявление namespace :) Название: Re: Механика создания класса формы Qt Designer Отправлено: Igors от Август 21, 2014, 19:08 ...чтобы почувствовать себя уверенно и просить заказы :), а то сейчас я их только завалю. Да и, по правде говоря, никто не откликнулся на предложение бесплатного сотрудника (я его тут же на форуме размещал). А на сайтах фриланса, как пить дать, попросят портфолио и т.п. Мне приходится выступать в роли заказчика (для меня тягостной) - чихал я на то портфолио. Даже наоборот, если человек чересчур упорно/настойчиво рекламирует себя - толку скорее всего не будет. Размещать объявление здесь - ну не вредно, но шансов немного. Пока смущает фриланс - хорошо, тогда возьмите форумы попроще, там много нерадивых студентов типа "памагите, скоро здавать", конечно заплатят они копейки (если заплатят вообще), но профессионалом Вы станете, и в такой работе нет ничего зазорного.А "неуклонно повышать свой уровень" - путь тупиковый. В первой же практической работе выяснится что минимум 95% изученного и нафиг не надо. Поэтому чем быстрее перейдете от теории к практике - тем лучше. Название: Re: Механика создания класса формы Qt Designer Отправлено: makar182 от Август 21, 2014, 19:11 Цитировать А "неуклонно повышать свой уровень" - путь тупиковый. В первой же практической работе выяснится что минимум 95% изученного и нафиг не надо. Поэтому чем быстрее перейдете от теории к практике - тем лучше. Согласен, но нужно самое основное понять, от чего плясать-то:) А дальше только практика :) Цитировать возьмите форумы попроще, там много нерадивых студентов типа "памагите, скоро здавать" Адресов не знаете? ;D Название: Re: Механика создания класса формы Qt Designer Отправлено: kambala от Август 21, 2014, 19:18 На деле есть 2 варианта объявления UI. вообще-то есть 3 способа, в настройках креатора можно выбрать любой.непонятное объявление namespace напрашивается только одно слово: фейспалм.Название: Re: Механика создания класса формы Qt Designer Отправлено: Igors от Август 21, 2014, 19:27 Адресов не знаете? ;D Та любое "ru", напр cyberforum. Данный форум - приятное исключение, все-таки Qt требует знания языка. А на остальных начинающие прочно доминируютНазвание: Re: Механика создания класса формы Qt Designer Отправлено: makar182 от Август 21, 2014, 20:05 Адресов не знаете? ;D Та любое "ru", напр cyberforum. Данный форум - приятное исключение, все-таки Qt требует знания языка. А на остальных начинающие прочно доминируютПонял, спасибо :) Возник вопрос. Я написал простой код (см. ниже), но почему то при запуске невозможно открыть(в моем случае - создать) файл для записи и соответственно, прочитать файл. Такая же проблема (я думаю это как-то связано) были при отработке "mkpath". Код: #include <QCoreApplication> Название: Re: Механика создания класса формы Qt Designer Отправлено: gil9red от Август 21, 2014, 20:12 Адресов не знаете? ;D Та любое "ru", напр cyberforum. Данный форум - приятное исключение, все-таки Qt требует знания языка. А на остальных начинающие прочно доминируютПонял, спасибо :) Возник вопрос. Я написал простой код (см. ниже), но почему то при запуске невозможно открыть(в моем случае - создать) файл для записи и соответственно, прочитать файл. Такая же проблема (я думаю это как-то связано) были при отработке "mkpath". Код: #include <QCoreApplication> С кодом, вроде бы, все в порядке, значит проблема в том, что не получается обнаружить тот файл :) попробуйте абсолютный путь указывать, а не относительный ;) И лучше в следующий раз создавайте отдельную тему: одна проблема -- одна тема :) Название: Re: Механика создания класса формы Qt Designer Отправлено: makar182 от Август 21, 2014, 20:17 Адресов не знаете? ;D Та любое "ru", напр cyberforum. Данный форум - приятное исключение, все-таки Qt требует знания языка. А на остальных начинающие прочно доминируютПонял, спасибо :) Возник вопрос. Я написал простой код (см. ниже), но почему то при запуске невозможно открыть(в моем случае - создать) файл для записи и соответственно, прочитать файл. Такая же проблема (я думаю это как-то связано) были при отработке "mkpath". Код: #include <QCoreApplication> С кодом, вроде бы, все в порядке, значит проблема в том, что не получается обнаружить тот файл :) попробуйте абсолютный путь указывать, а не относительный ;) И лучше в следующий раз создавайте отдельную тему: одна проблема -- одна тема :) В следующий раз так и поступлю :) У меня Мак и я так понимаю, что это не относительный путь... Название: Re: Механика создания класса формы Qt Designer Отправлено: kambala от Август 21, 2014, 20:32 может права на домашней папке поломались? попробуй их починить через дисковую утилиту.
Название: Re: Механика создания класса формы Qt Designer Отправлено: makar182 от Август 21, 2014, 20:47 может права на домашней папке поломались? попробуй их починить через дисковую утилиту. Не помогло :( Хотя, что интересно, на Windows код сработал. Название: Re: Механика создания класса формы Qt Designer Отправлено: Bepec от Август 21, 2014, 22:18 Непонятный именно для людей никогда его не видевших :)
Я один пытался работать с Creator'ром и самый частый вопрос был - а что за левый namespace тут? :) Название: Re: Механика создания класса формы Qt Designer Отправлено: makar182 от Август 21, 2014, 22:25 так как запустить это дело на Mac-e?
Название: Re: Механика создания класса формы Qt Designer Отправлено: kambala от Август 21, 2014, 22:55 Непонятный именно для людей никогда его не видевших :) ну да, когда не знаешь что такое forward declaration...Я один пытался работать с Creator'ром и самый частый вопрос был - а что за левый namespace тут? :) так как запустить это дело на Mac-e? у меня твой код нормально отрабатывает, файл создается и читается. попробуй другую папку.Название: Re: Механика создания класса формы Qt Designer Отправлено: makar182 от Август 21, 2014, 23:06 Непонятный именно для людей никогда его не видевших :) ну да, когда не знаешь что такое forward declaration...Я один пытался работать с Creator'ром и самый частый вопрос был - а что за левый namespace тут? :) так как запустить это дело на Mac-e? у меня твой код нормально отрабатывает, файл создается и читается. попробуй другую папку.Пробовал и в корень кидать и в папку Downloads один черт... Название: Re: Механика создания класса формы Qt Designer Отправлено: kambala от Август 21, 2014, 23:21 систему переустанови =)
Название: Re: Механика создания класса формы Qt Designer Отправлено: vizir.vs от Август 22, 2014, 11:32 систему переустанови =) Генту ставь и не парься =)Название: Re: Механика создания класса формы Qt Designer Отправлено: kambala от Август 22, 2014, 12:23 недавно видел на ленте в фб:
Максим Ігнатенко: Кажется, в гентушника я таки морфировать не смогу. Слишком уж оно не работает. Михаил Бортник: в гентушника можно только фалломорфировать, говорю как бывший гентушник Название: Re: Механика создания класса формы Qt Designer Отправлено: Igors от Август 22, 2014, 17:13 У меня Мак и я так понимаю, что это не относительный путь... Относительный, полный начинается с /Volumes/...Вообще вопрос недостоин обсуждения. Код ошибки печатали? Руками в том фолдере файл создается? Права доступа щупали? Все это надо сначала проверить, а потом уж (может быть) спросить на форуме. Не привыкайте "пастись" :) Название: Re: Механика создания класса формы Qt Designer Отправлено: Fregloin от Август 24, 2014, 09:04 по поводу namespace UI, в креаторе есть настройка, можно сделать что бы виджеты вашей формы были:
в namespace ui в стеке, в namespace ui в куче, класс вашей формы использовал множественное наследование от QDialog и созданой формы UI_YourFrom, тогла namespace сипользоваться вообще не будет, все виджеты будут членами результрующего класса. (Подход похожий на Delphi/C++ Builder). Все зависит от привычки. Можете поискать в настойках. Название: Re: Механика создания класса формы Qt Designer Отправлено: makar182 от Август 24, 2014, 11:47 У меня Мак и я так понимаю, что это не относительный путь... Относительный, полный начинается с /Volumes/...Вообще вопрос недостоин обсуждения. Код ошибки печатали? Руками в том фолдере файл создается? Права доступа щупали? Все это надо сначала проверить, а потом уж (может быть) спросить на форуме. Не привыкайте "пастись" :) У вас есть опыт, потому вы сразу и разложили, как это проверить. Я бы сам не додумался полезть проверять права доступа и т.п.,если бы тут не посоветовали... |