|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
24.10.2010, 09:17 | #1 |
Пользователь
Регистрация: 15.02.2010
Сообщений: 67
|
Изменение font.style для нужных слов
Привет всем. У меня такая проблема. Есть три кнопки SpeedButton, есть RichEdit. Значение AllowAllUp у всех трёх кнопок = true. Это что бы при клике они оставались в нажатом состоянии, а при следующем клике возвращались в исходное состояние. Назначение первой кнопки изменять RichEdit1.font.Stile := [fsBold] (полужирный шрифт), назначение второй RichEdit1.Font.Style := [fsItalic] (курсив), назначение третий RichEdit1.Font.Style :=[fsUnderline] (подчёркутый). Первая кнопка работает, а остальные нет! В чём причина?
Код:
Последний раз редактировалось ProgDel; 24.10.2010 в 17:26. |
24.10.2010, 09:34 | #2 |
Форумчанин
Регистрация: 04.04.2009
Сообщений: 438
|
Быть не может.
Проведенные испытания показали, что и другие две кнопки отрабатывают как им и положено. GroupIndex во всех кнопках в единицу установлены? P.S. Что делает здесь FontDialog? Пользы от него никакой. Последний раз редактировалось Скандербег; 24.10.2010 в 09:38. |
24.10.2010, 09:41 | #3 |
Пользователь
Регистрация: 15.02.2010
Сообщений: 67
|
Нет у первой GroupIndex = 1 у второй 2 у третей 3. А FontDialog нужен для того что бы вернуть обратно обычный стиль шрифта.
|
24.10.2010, 09:44 | #4 |
Участник клуба
Регистрация: 07.07.2007
Сообщений: 1,518
|
1. А ты задал всем трем кнопкам общий GroupIndex? Если нет - они не могут принимать Down.
2. Логичнее писать Код:
|
24.10.2010, 09:47 | #5 |
Форумчанин
Регистрация: 04.04.2009
Сообщений: 438
|
Для того чтобы вернуть обычный стиль FontDialog не нужен. Достаточно присвоить "пустое" значение стиля:
Код:
Последний раз редактировалось Скандербег; 24.10.2010 в 09:55. |
24.10.2010, 11:40 | #6 |
Пользователь
Регистрация: 15.02.2010
Сообщений: 67
|
А теперь всё работает! Парни спосибо!!!
Код:
Последний раз редактировалось ProgDel; 24.10.2010 в 11:55. |
24.10.2010, 11:56 | #7 |
Участник клуба
Регистрация: 07.07.2007
Сообщений: 1,518
|
Потому что на двух последних кнопках висит один и тот же код
if SpeedButton12.Down = true then Может на третьей надо if SpeedButton13 .... И вообще, переименуй кнопки btnBold btnItalic btnUnderline ... и не будет таких казусов. |
24.10.2010, 12:16 | #8 |
Форумчанин
Регистрация: 04.04.2009
Сообщений: 438
|
А если сделать так:
Код:
|
24.10.2010, 17:22 | #9 |
Пользователь
Регистрация: 15.02.2010
Сообщений: 67
|
Изменение Font.Style для нужных слов
Как сделать что бы при изменении стиля шрифта, стиль прежде написанного текста оставался прежним, а новый текст вновь заданным?
|
24.10.2010, 17:29 | #10 |
Участник клуба
Регистрация: 07.07.2007
Сообщений: 1,518
|
К Delphi в придачу есть Демо. Найди там исходники RichEdit.
Обрати внимание в коде на SelAttributes. Если разберешься - больше не будет вопросов со стилями текста. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
SF (Sprite font) | ALKOrobot | Общие вопросы Delphi | 0 | 19.02.2010 15:03 |
FontDialog.Font | IpCod | Общие вопросы Delphi | 1 | 04.10.2009 23:02 |
Изменение репутации не работает | Crivel | О форуме и сайтах клуба | 5 | 08.04.2009 17:28 |
Font | Killbrum | Помощь студентам | 4 | 26.03.2008 23:59 |