Russian Qt Forum
Сентябрь 30, 2024, 12:33 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: PyQt4. QTextEdit. Требуется добавить в него формируемую питоном табличку.  (Прочитано 4279 раз)
Пытон
Гость
« : Сентябрь 27, 2013, 11:43 »

Получается только если в QTextEdit.append("<table><tr><td>Засунуть весь HTML-код формирующий таблицу<td></tr></table>")

А я пытался в цикле пробегая значения из строк модели (QSqlTableModel) добавлять каждое отдельным append.

myTextEdit.append("<table>")
for q in range(mymodel.rowCount()):
   myTextEdit.append("<tr>")
   myTextEdit.append("<td>")
   myTextEdit.append(mymodel.record(q).value("myfield"))
   myTextEdit.append("</td>")
   myTextEdit.append("</tr>")
myTextEdit.append("</table>")

Но таким образом TextEdit таблицу мне не формирует. Просто выдаёт всё подряд, включая закрывающие тэги, в новых строках.
Выходит, получится только сформировать текстовый файл с HTML-данными, а потом его всего разом и засунуть в TextEdit? Только так?
Записан
kambala
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4744



Просмотр профиля WWW
« Ответ #1 : Сентябрь 27, 2013, 11:57 »

еще можно QTableWidget использовать Улыбающийся
Записан

Изучением C++ вымощена дорога в Qt.

UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
Пытон
Гость
« Ответ #2 : Сентябрь 27, 2013, 12:28 »

Мне надо выдать таблицу на печать. Какой ещё TableWidget?
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #3 : Сентябрь 27, 2013, 12:38 »

В строке формируешь данные, а потом ее setHtml эдиту.
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
kambala
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4744



Просмотр профиля WWW
« Ответ #4 : Сентябрь 27, 2013, 12:42 »

про печать нигде не сказано в первом сообщении.

а в чем проблема сформировать полную строку и засунуть ее в QTextEdit?
Записан

Изучением C++ вымощена дорога в Qt.

UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
Пытон
Гость
« Ответ #5 : Сентябрь 27, 2013, 13:30 »

Проблема в том, что в питоне строки - неизменяемые объекты.
str1 = str1 + 'траляля' не дополняет существующую строку, а создаёт новую строку полученную путём объединения двух строковых объектов 'траляля' и того на который раньше ссылалась ссылка str1.
Чего зря память транжирить. Я её и так растранжирю своими пока что неумелыми sql-запросами. Улыбающийся

Написал уже всё через создание текстового файла, который потом разом помещается в QTextEdit.

Записан
kambala
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4744



Просмотр профиля WWW
« Ответ #6 : Сентябрь 27, 2013, 14:52 »

в качестве хака можно добавлять все строки в массив, а потом сделать join
Записан

Изучением C++ вымощена дорога в Qt.

UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.13 секунд. Запросов: 23.