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

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

Страниц: [1] 2   Вниз
  Печать  
Автор Тема: Изменение Qtextedit [РЕШЕНО]  (Прочитано 13711 раз)
jatsuk
Гость
« : Апрель 05, 2012, 10:37 »

Хочу сделать нормальное редактирование текста для пользователя в Qtextedit

есть Qtextedit
есть строка QString opsim= "<b>балалала</b>"

Текст отображается "красиво", тоесть жирным в opisan_2
 ui->opisan_2->setText(opsim);

Нужно пользователь редактировал его именно в таком виде.... потом сохранял, но как забрать оттуда этот текст в том же виде <b>балалала2</b>  Непонимающий например , через
 r2=ui->opisan_2->toPlainText(); он забирает просто текст без тегов -  балалала2
А через ui->opisan_2->toHTML(); он забирает много лишнего <html><head><куча стилей><b>балалала2</b> </html></head>

« Последнее редактирование: Апрель 06, 2012, 11:15 от jatsuk » Записан
interv
Гость
« Ответ #1 : Апрель 05, 2012, 10:39 »

ui->opisan_2->text() че вернет?
и что есть opisan_2?

если  opisan_2 - Qtextedit, то вообще никак вроде, храни в стринге. Хотя Qt asistant говорит что есть метод text() хотя на самом деле это нитак, в Qt4.0 этот метод был убран.

И юзай setPlainText или setHtml в зависимости от строки. В данном случае setHtml
« Последнее редактирование: Апрель 05, 2012, 10:57 от interv » Записан
jatsuk
Гость
« Ответ #2 : Апрель 05, 2012, 11:10 »

text() ничего не возвратит ) не компилит, нет такого )

А можно как нибудь переотобразить textedit. Вот например у меня отображается через setText, а сделать чтобы отображалось в setPlaintext, не сохраняя ?

Ну или может все стили отключить  как нибудь, чтобы лишних тегов не писал ?

Ну и крайний вариант, теги то всегда будут постоянные (сам стиль текст эдита), может их из QString удалять ?
Записан
interv
Гость
« Ответ #3 : Апрель 05, 2012, 11:51 »

Сделай ты QString и храни там свою html'ку при редактировании вставляй ее, при кнопочке сохранить, например, обновляй ее в QTextEdit'е
Записан
jatsuk
Гость
« Ответ #4 : Апрель 05, 2012, 14:01 »

Вы походу не поняли ) проблема как раз в том , что пользователь должен сам в QtextEdit редактировать и там не должно отображаться самих тегов, а всё должно быть в презентабельном виде.

Неужели никто такого не делал... полюбому кто нибудь делал пользовательский редактор текста, что то типа ворд
Записан
Bepec
Гость
« Ответ #5 : Апрель 05, 2012, 14:06 »

Ну ты сам сказал себе решение.

У тебя 2 варианта - выводить текст в HTML или plainText. ПлейТекст не имеет жирности и прочих плюшек. HTML имеет.
Вывод? выводить HTML, обрубая ненужное.

PS простое решение, не очень и элегантное.
Записан
jatsuk
Гость
« Ответ #6 : Апрель 05, 2012, 14:38 »

Я думал, вдруг есть что то получше )

Подскажите, как убрать ненужное из строки QString, а то не разу не делал
например убрать первые 5 и последние 2. ну или определенный текст убрать...
Записан
iroln
Гость
« Ответ #7 : Апрель 05, 2012, 14:40 »

Я заметил, что топикастер так выражает свои мысли, что ничерта не понятно, что он хочет. В итоге куча советов вообще не в тему. Улыбающийся

jatsuk, ты хочешь вытащить из textEdit текст с тегами, но без "HTML-мусора", вроде заголовка и т.п.?
Записан
Bepec
Гость
« Ответ #8 : Апрель 05, 2012, 14:42 »

Слава  классу QString!!!

А так же методам indexOf(), lastIndexOf(), mid().
Записан
_OLEGator_
Гость
« Ответ #9 : Апрель 05, 2012, 14:47 »

Элементарные операции со строками не знать... Может проще один раз открыть assistant и почитать про класс QString?
Не стоит на такие вопросы вообще давать ответы, новички уже по любому поводу и без повода лезут на форум задавать вопросы.
Записан
iroln
Гость
« Ответ #10 : Апрель 05, 2012, 14:49 »

Цитировать
indexOf(), lastIndexOf(), mid().
Да это всё детские забавы, нужен суровый парсер HTML, который можно натравить на то, что выплёвывает toHtml(), чтобы получить Document Object Model. Вот это по-взрослому, а то, понимаешь, indexOf...  Смеющийся
Записан
Bepec
Гость
« Ответ #11 : Апрель 05, 2012, 14:50 »

Я indexOf ом SQL запросы правлю!!! Да я им сотни байтов убиваю!! Да я! Да он! ... Веселый
Записан
jatsuk
Гость
« Ответ #12 : Апрель 05, 2012, 14:54 »

iroln, я это ещё в первом сообщении написал... даже с примерами )

Спасибо, что ответили на глупый вопрос с Qstring )
Записан
iroln
Гость
« Ответ #13 : Апрель 05, 2012, 15:03 »

jatsuk, если тебе всё понятно, это не значит, что остальным тоже всё понятно. Тот, кто не знает о твоей проблеме, может всё видеть совершенно иначе.

Во-первых, название темы: Изменение Qtextedit 
Очень "информативно" и сразу "очевидно", что у тебя за проблема.

Во-вторых, первое сообщение написано сумбурно и много лишней информации. Какой-то пользователь, что-то там редактирует, какое это вообще имеет отношение к твоей проблеме? Редактируется всё нормально в textEdit. Надо было написать всего лишь, что:
Цитировать
А через ui->opisan_2->toHTML(); он забирает много лишнего <html><head><куча стилей><b>балалала2</b> </html></head>
То есть, как убрать лишнее (кучу стилей, заголовок и т.п.) из HTML-вывода.
Записан
jatsuk
Гость
« Ответ #14 : Апрель 05, 2012, 15:42 »

короче, спасибо, я спать )
Записан
Страниц: [1] 2   Вверх
  Печать  
 
Перейти в:  


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