Форум программистов, компьютерный форум, киберфорум
Наши страницы

Qt

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.78
JOKFEN
6 / 5 / 1
Регистрация: 11.12.2012
Сообщений: 39
#1

Шрифт для каждого символа - C++ Qt

16.12.2013, 19:00. Просмотров 1437. Ответов 4
Метки нет (Все метки)

Приветствую, есть проблема. Есть TextEdit, нужно сделать для каждого символа разный шрифт. Каким образом можно подобное реализовать, пусть даже и не с помощью TextEdit, но объём текста довольно большой.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.12.2013, 19:00
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Шрифт для каждого символа (C++ Qt):

Поменять шрифт на курсивный для одного элемента дерева - C++ Qt
никак не могу правильно погуглить, есть строка str надо его выделить или так или так , как это можно сделать? то есть ввожу в lineEdit...

Как сделать контекстное меню для каждого элемента QListWidget - C++ Qt
Не как не могу понять как сделать контекстное меню для каждого элемента QListWidget, помогите пожалуйста Qt начал изучать совсем недавно

Получить номер кодовой страницы и номер символа в этой кодовой странице для каждого символа - C (СИ)
Вот на этот раз я точно туда пишу. /* Предыстория */ У меня есть некоторый шрифт, представленный в виде большого количества...

Для каждого символа увеличить его значение на 1 - C++
В соответствии с индивидуальным вариантом написать и выполнить программу: 26. Задан текст. Для каждого символа увеличить его значение на...

Для каждого символа текста увеличить его значение на 1 - C++
Я написал программу, но она не работает. Пожалуйста, помогите решить проблему. Задание: Задан текст. Для каждого символа увеличить его...

Шифрование методом гаммирования. Гамма для каждого символа - C++
Собственно появилась необходимость реализовать механизм шифрования методом гаммирования. Особенности, которые необходимо учесть: 1) Гамма...

4
RazrFalcon
1382 / 1239 / 262
Регистрация: 10.11.2013
Сообщений: 3,763
17.12.2013, 01:17 #2
http://qt-project.org/doc/qt-5.0/qtwidgets/richtext-textedit.html

Посмотрите как работает функция Bold и все поймете.
1
JOKFEN
6 / 5 / 1
Регистрация: 11.12.2012
Сообщений: 39
17.12.2013, 09:27  [ТС] #3
Цитата Сообщение от RazrFalcon Посмотреть сообщение
http://qt-project.org/doc/qt-5.0/qtwidgets/richtext-textedit.html

Посмотрите как работает функция Bold и все поймете.
Google не помогает, где прочитать про неё можно?

Из Шлее понял только то, что она возвращает bool и информирует о жирности и наклонности шрифта, italic - наклонность, bold - жирность.

В данном случае мне нужно сделать так: Hello world
0
RazrFalcon
1382 / 1239 / 262
Регистрация: 10.11.2013
Сообщений: 3,763
17.12.2013, 09:44 #4
Я же вам дал ссылку на пример. В нем прога. В этой проге можно сделать кусок текста жирным. Кнопка B на панели. Вот посмотрите что эта кнопка делает и сделайте по аналогии так же.
1
JOKFEN
6 / 5 / 1
Регистрация: 11.12.2012
Сообщений: 39
18.12.2013, 00:11  [ТС] #5
Цитата Сообщение от RazrFalcon Посмотреть сообщение
Я же вам дал ссылку на пример. В нем прога. В этой проге можно сделать кусок текста жирным. Кнопка B на панели. Вот посмотрите что эта кнопка делает и сделайте по аналогии так же.
Посмотрел, там производится выделение текста, вот только проблема выделить 1 символ.

Так - cursor.selectedText(text[i]); не подходит(

Добавлено через 2 часа 38 минут
Долго разбираясь проблему понял, но вот решить её так и не смог.
QTextCursor cursor = ui->textEdit->textCursor(); идентификатор выделенного текста, а вот символа так и не догадался.

Добавлено через 34 минуты
Облазив кучу литературы всё понял, спасибо
В общем:
1) Создаём QTextEdit.
2) Создаём для него курсор:
C++
1
QTextCursor cursor = ui->textEdit->textCursor();
3) Перемещаем его на старт:
C++
1
cursor.movePosition(QTextCursor::Start);
4) Двигаем курсор и выделяем символы:
C++
1
cursor.movePosition(QTextCursor::Right, QTextCursor::KeepAnchor, i);
5) Делаем с символом что хотим:
C++
1
fmt.setFontFamily("Arial Black");
Добавлено через 1 час 5 минут
Забыл добавить, что нужно обязательно применять к тексту, вот пример:

C++
1
2
3
4
cursor.clearSelection();
ui->textEdit->setTextCursor(cursor);
cursor.movePosition(QTextCursor::Right, QTextCursor::KeepAnchor);
ui->textEdit->setTextCursor(cursor);
0
18.12.2013, 00:11
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.12.2013, 00:11
Привет! Вот еще темы с ответами:

Для каждого символа указать его относительную частоту - Free Pascal
Здравствуйте. Дана задача : Для каждого символа заданного текста указать его относительную частоту появления в тексте. Построить...

Посчитать количество информации для каждого символа в тексте - Информатика
Помогите разобраться с такой задачей: дан любой текст, нужно посчитать количество информации для каждого символа в тексте. Есть какая либо...

Дана строка. Вставить после каждого символа два случайных символа - C#
Здравствуйте! помогите с реализацией!! Часть задания я решил, подскажите как сделать рандомные буквенные значения, после каждого символа? ...

В заданной строке после каждого символа вставить число, соответствующее коду этого символа - C++ Builder
В заданной строке после каждого символа вставить число, соответствующее коду этого символа. PS сделать с использованием компонента Memo


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.