В общем, задача простая. Нужно прочитать данные из Excel
документа в таблицу QTableWidget
.
среда, 2 июля 2014 г.
Qt: Прочитать данные из Excel документа
вторник, 1 июля 2014 г.
Qt: Дерево в Qt
Возникла необходимость построить дерево структурных подразделений в приложении Qt. Решение задачи решил реализовать с помощью виджета QTreeWidget, так как дерево не очень большое и редко (практически никогда) не изменяется. Вообще то создать дерево не представляет особого труда, но ввиду того того что к узлам дерева необходимо привязывать пользовательские объекты, приходится учитывать кое какие моменты. Ниже опишу как решается такого рода проблема имея Qt и СУБД FireBird 2.5.
среда, 14 мая 2014 г.
Symfony 2: Изменение ролей пользователем во время сессии
При реализации своей админки в проекте Symfony, возникла ситуация, когда пользователь с ролью ROLE_ADMIN
убирал эту роль у себя самого. При этом он имел доступ ко всем защищенным этой ролью ресурсам до следующей "реальной" аутентификации. Иными словами, информация о ролях этого пользователя бралась из сессии и была устаревшей.
вторник, 13 мая 2014 г.
Symfony 2: Настройка ЧПУ на IIS
При развертывании сайта на IIS, в папке web проекта Symfony, нужно создать файл настроек для сервера IIS - web.config. Содержимое файла такое:
воскресенье, 27 апреля 2014 г.
Symfony 2: Реализация возможности last visit datetime
Чтобы реализовать функционал last visit datetime
в Symfony, нужно создать обработчик успешного входа в систему. Для этого следует создать класс реализующий интерфейс
Symfony\Component\Security\Http\Authentication\AuthenticationSuccessHandlerInterface
пятница, 4 апреля 2014 г.
Symfony 2: Назначение роли по умолчанию для нового пользователя
В офф документации Symfony
довольно подробно и ясно описано как реализовать аутентификацию пользователя через базу данных. Там же рассмотрен вопрос о сохранении ролей в БД. А вот как назначить роль по умолчанию новому пользователю - не описано. Реализовать этот недостающий момент можно следующим образом:
вторник, 1 апреля 2014 г.
Qt: Запись отладочной информации в файл
В тех случаях, если отладка в среде разработки недоступна, например при создании служб Windows
, приходится писать отладочную информацию в файл. Чтобы сделать это в Qt
и при этом не изобретать велосипед, можно воспользоватся встроенными методами qDebug
, qWarning
, qCritical
, qFatal
.
FTP: Пассивный и активный режимы
Как известно протокол FTP
отличается от других протоколов тем что требует два сокета - один командный (для общения с сервером), а другой - для передачи данных. С этим более менее все понятно. Непонятным, на первый взгляд, представляются такие понятия, как пассивный и активный режимы FTP
соединения. Но это только на первый взгляд.
среда, 26 марта 2014 г.
Symfony 2: Локализация
Стандартная локализация, которая предоставляется в Symfony 2.4
, подразумевает изменение локали через URI
. Например, переводы страниц будут доступны по таким ссылкам:
localhost/symtest/en/homepage localhost/symtest/uk/homepage localhost/symtest/ru/homepage
Предлагаемый по умолчанию механизм локализации, реализуется в Symfony 2.4
довольно просто.
Qt: Ресурсы
Добавить картинки в исполняемый файл можно с помощью ресурсов. В данной статье описано как добавить файл ресурсов в проект и как использовать картинки из этого ресурса в коде.
вторник, 25 марта 2014 г.
Qt: Пользовательские диалоговые окна
В статье описаны главные моменты при создании пользовательских окон.
Qt: Позиционирование окон
Задавать позицию окна в Qt нужно вручную. В статье описан метод как можно разместить окно по центру относительно рабочего стола, или родительского окна.
понедельник, 24 марта 2014 г.
среда, 19 марта 2014 г.
Qt: Работа с ini файлом
Часто приходится иметь дело с ini
файлами. Так вот, Qt
предоставляет класс для работы с этим форматом файлов. На первый взгляд кажется удобным, но посмотрим. В данной статье описано как работать с ini
файлами.
Symfony 2: Изменение шаблонов форм
Symfony
, по умолчанию, использует шаблоны расположенные в папке vendor\symfony\symfony\src\Symfony\Bridge\Twig\Resources\views\Form\
.
вторник, 18 марта 2014 г.
Qt: Внедрение манифеста в исполняемый файл
exe
файл вовсе не обязательно. Сам файл манифеста можно положить рядом с exe
и все будет отлично работать. Как это делается - можно почитать в статье UAC манифест. Тем не менее, иногда приходится внедрять UAC
манифест в exe
файл. В данной статье будет описан способ внедрения UAC
манифеста на примере приложения созданного в Qt
.
UAC манифест
dll
файлы - так называемый механизм частных сборок. Помимо этого, используя манифест, можно назначить уровень доступа к приложению. Например, необходимо, чтобы приложение запускалось только от имени администратора.
понедельник, 17 марта 2014 г.
Частные сборки (как указать dll для приложения в манифесте)
dll
файлы, от которых он (продукт) зависит, в каталог с исполняемым файлом. Хорошо было бы создать папку и поместить туда все эти библиотеки. Используя механизм, так называемых частных сборок, можно добиться желаемого результата.