BlackLotos
-
Постов
10 -
Зарегистрирован
-
Посещение
Сообщения, опубликованные BlackLotos
-
-
Поставил триалку Delphi 10 Seattle, в ней баг не воспроизводится, так что вопрос можно закрывать.
-
не включен?
TEdit.CheckSpelling
и можно еще попробовать поставить
TEdit.ControlType = Platform
Отключение или включение CheckSpelling не помогает.
ControlType у TMemo отсутствует. (по крайней мере в XE7)
-
Использую XE7, наткнулся на неприятную проблему с т9.
Печатаем строку, нажимаем "Enter" и каретка вначале перепрыгивает на новую строку, а потом возвращается обратно. При этом если начать печатать, то печать начнется на новой строке. Баг проявляется не всегда. Обязательное условие - текст должен быть подчеркнут (готов к замене т9).Чтоб лучше понять выкладываю видео (51 секунда):
http://file.sampo.ru/rgt744/
пояснение к видео:
При третьем нажатии "Enter" баг воспроизвелся. Так же баг воспроизвелся на 45 секунди видео (создалась новая строка, и сразу исчезла, при этом дальнейшая печать началась на новой строке , хоть каретка находилась на другой)
При отключении т9 - баг не воспроизводится.
Собственно есть ли способ справится с этим багом без отключения Т9? И если нет, то как отключить Т9 программно?
-
Тем не мение вопрос остается открытым - можно ли переместить фокус ввода в заданную ячейку таблицы ? (без создания дополнительного класса)
-
Ну если одна строка кода - это нагромождение, то ищи какие-нибудь стандартные методы (или жди когда это кто-нибудь сделает за тебя).
Тут напрашивается один из трех выводов:
1. Либо Вы весьма невнимательны и пропустили предложение про "protected" и создание отдельного класса просто для того, чтоб перенести фокус ввода. И тот факт, что для переноса каретки приходится делать отдельный класс - действительно является нагромождением. (кстати, в пользу невнимательности говорит и тот факт, что Вы начали писать просто про фокус, несмотря на то, что изначально речь шла о фокусе ввода)
2. Либо Вы не понимаете, что поля и методы, находящиеся под директивой "protected", не доступны пользователям класса. И не понимаете- почему нужно делать новый класс.
3. Либо (самое ужасное) создание нового класса с методом, позволяющим переносить фокус ввода в заданную ячейку, Вы делаете в одну строку кода .
-
Данные методы не передают фокус ввода в заданную ячейку.
Данные методы передают фокус.
Если надо активировать ввод (редактор ячейки), то можно воспользоваться для этого методом TColumn.ShowEditor.
1. Я изначально спрашивал про ФОКУС ВВОДА. По этому не ясно к чему ты написал те методы.
2. "ShowEditor" является protected и для доступа к нему придется делать новый класс на основе "TColumn" (в моем случае TStringColumn). Нужели нет каких то стандартных методов без лишнего нагромождения?
-
StringGrid.SelectCell()
StringGrid.SelectColumn()
StringGrid.SelectRow()
StringGrid.Selected
Наугад написал? Данные методы не передают фокус ввода в заданную ячейку.
-
Плыть в направлении использования TTextLayout. При отключении Direct2D канвы, включается по дефолту GDI+, в которой нету поддержки атрибутов. О чем указано в официальной документации.
Однако, вы можете применять TTextLaoyut не в целом ко всему текстом с атрибутами, а к частям, имеющим одинаковый цвет и стиль. То есть получаете размеры каждой части в заданных настройках текста, а затем по очереди выводи эти части.
Мне кажется есть другой вариант. Delphi ведь написан в Delphi. И собственно редактор кода умеет выводить текст разного цвета и стиля написания. Если я правильно понял - это "TEditControl". Почему нельзя вынести данный контрол на всеобщее использование?
-
Здравствуйте. Собственно тема говорит сама за себя. Имеется объект класса "TStringGrid". Колонки и строки создаются динамически. Необходимо переместить фокус ввода в заданную ячейку. Не могу сообразить как это сделать.
[Android] TComboEdit, криво работают события KeyUp и KeyDown
в TComboEdit
Опубликовано
Не только с этим компонентом. Такая же ситуация наблюдается с TMemo, но там даже на цифры нет реакции