Редактор шаблонов |
Здравствуйте, гость ( Вход | Регистрация )
Редактор шаблонов |
genusatplay |
29.11.2008, 18:57
Сообщение
#11
|
Студент Группа: Участник Сообщений: 50 Регистрация: 8.11.2008 Пользователь №: 416 Спасибо сказали: 0 раз(а) Репутация: 0 |
у меня просто задание сделать консольную прогу которая из шаблона и данных(в бд) делает пдф, и гуи прогу с помощью которой шаблоны можно делать да шаблоны для текста интересное задание. а на сколько реализовать нужно пдф??? на сколько мне известно это формат еще ни один просмотрщик не реализовал полностью. предполагается, что элементы на шаблоне: текст, картинка, ссылка(?), что то еще??? ну еще таблица, из textedita экспортится в pdf нормально |
|
|
kwisp |
29.11.2008, 20:13
Сообщение
#12
|
астарожна ынтжинэр Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: 23 |
а вопрос состоял: с чего начать???
если мало мальски знаком с Qt, попробуй начать с элементов, которые будешь тащить на полотно шаблона. 1. общие свойства 2. свойства каждого в отдельности. допустим: когда юзер тащит элемент на полотно создаем новый объект класса выбранного элемента, затем редактируем его свойства, затем тащим следующий элемент, после нажатия заветной кнопки СоздатьШаблон бежим по массиву указателей на элементы составленному в соответствии с положением элементов : слева направо сверху вниз читаем их свойства и с помощью Qt механизмов работы с хмл или своих пишем файл. (к примеру о тексте) у меня такой вопрос: создание шаблона тем способом которым ты хочешь слабо отражает наглядно изменение размера текста а из-за отсутствия самого текста следовательно ты даже ориентировочно не знаешь сколько места займет твой текст. на шаблоне одна кнопка а в реальности 20 страниц. отсюда вопрос: я подозреваю, что ты все же знаешь сколько примерно будет букоф в тексте какая картинка может быть какой колонтитул какая таблица??? |
|
|
genusatplay |
30.11.2008, 8:03
Сообщение
#13
|
Студент Группа: Участник Сообщений: 50 Регистрация: 8.11.2008 Пользователь №: 416 Спасибо сказали: 0 раз(а) Репутация: 0 |
а вопрос состоял: с чего начать??? если мало мальски знаком с Qt, попробуй начать с элементов, которые будешь тащить на полотно шаблона. 1. общие свойства 2. свойства каждого в отдельности. допустим: когда юзер тащит элемент на полотно создаем новый объект класса выбранного элемента, затем редактируем его свойства, затем тащим следующий элемент, после нажатия заветной кнопки СоздатьШаблон бежим по массиву указателей на элементы составленному в соответствии с положением элементов : слева направо сверху вниз читаем их свойства и с помощью Qt механизмов работы с хмл или своих пишем файл. (к примеру о тексте) у меня такой вопрос: создание шаблона тем способом которым ты хочешь слабо отражает наглядно изменение размера текста а из-за отсутствия самого текста следовательно ты даже ориентировочно не знаешь сколько места займет твой текст. на шаблоне одна кнопка а в реальности 20 страниц. отсюда вопрос: я подозреваю, что ты все же знаешь сколько примерно будет букоф в тексте какая картинка может быть какой колонтитул какая таблица??? на данный момент так и получается, что я незнаю как будет выглядеть текст, надо будет уточнить этот вопрос |
|
|
kwisp |
30.11.2008, 21:11
Сообщение
#14
|
астарожна ынтжинэр Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: 23 |
можно попробовать сделать так: будет два документа
на один тащишь и размещаешь а на другом показываешь как это будет выглядеть. но опять же тестовый образец текста и картинки будут занимать опр кол-во места. можно просить указывать пользователя количество хотя бы килобайт, но вопрос сколько в определенном шрифте займет места... еще вопрос а как ты в хмл пустые строки делаешь. чтоб в пдф получился отступ ну или пустые строчки.??? |
|
|
genusatplay |
30.11.2008, 23:27
Сообщение
#15
|
Студент Группа: Участник Сообщений: 50 Регистрация: 8.11.2008 Пользователь №: 416 Спасибо сказали: 0 раз(а) Репутация: 0 |
можно попробовать сделать так: будет два документа на один тащишь и размещаешь а на другом показываешь как это будет выглядеть. но опять же тестовый образец текста и картинки будут занимать опр кол-во места. можно просить указывать пользователя количество хотя бы килобайт, но вопрос сколько в определенном шрифте займет места... еще вопрос а как ты в хмл пустые строки делаешь. чтоб в пдф получился отступ ну или пустые строчки.??? там есть настройка отступ слева справа сверху снизу вот начал тока форму делать.. чета непойму что он хочет..
Прикрепленные файлы
|
|
|
kwisp |
1.12.2008, 11:38
Сообщение
#16
|
астарожна ынтжинэр Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: 23 |
elemList = new List(); //чего это такое??
я сделал так: 28 строка // elemList = new List();// здесь ругался компилятор потому что ты не указал тип elemList 29 строка 30 строка frameLayout->addWidget(new List()); и твоя чудо форма появилась на одной строчке не может быть и таблица и текст???? почитай пожалуйста о работе с памятью в Qt . у тебя elemList никому не принадлежит не член класса и ты его явно не грохаешь "delete`ом" когда помять вернешь спрашвается??? |
|
|
genusatplay |
1.12.2008, 16:56
Сообщение
#17
|
Студент Группа: Участник Сообщений: 50 Регистрация: 8.11.2008 Пользователь №: 416 Спасибо сказали: 0 раз(а) Репутация: 0 |
в qt demos есть пример с пазлм из картинки там написано так:
и работает.. |
|
|
Litkevich Yuriy |
1.12.2008, 17:10
Сообщение
#18
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
и работает.. значит piecesList, где-то объявлена, если просто написать имя переменной, то компилер должен ругаться, так как он незнает типа переменной.genusatplay, вот этот кусок кода вобще ахинея:
Это С++, а не Оберон! |
|
|
genusatplay |
1.12.2008, 17:17
Сообщение
#19
|
Студент Группа: Участник Сообщений: 50 Регистрация: 8.11.2008 Пользователь №: 416 Спасибо сказали: 0 раз(а) Репутация: 0 |
и работает.. значит piecesList, где-то объявлена, если просто написать имя переменной, то компилер должен ругаться, так как он незнает типа переменной.genusatplay, вот этот кусок кода вобще ахинея:
Это С++, а не Оберон! с list'ом тупанул.. в *.h была прописана переменная.. я незаметил терь все как надо а с итемами что нетак? |
|
|
Litkevich Yuriy |
1.12.2008, 17:22
Сообщение
#20
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
а с итемами что нетак? нормальная практика это объявление указателя, а затем динамическое (через оператор new) создание объекта и инициализация указателя. Т.е. например так:
если тебе переменные p_i* будут нужны в дальнейшем, то их нужно объявлять в классе, чтобы область видимости была "Весь класс". Если же в дальнейшем не нужна, то можно объявить как в пример (в теле функции), но область видимости при этом только данная функция. |
|
|
Текстовая версия | Сейчас: 23.1.2025, 16:16 |