Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.02.2010, 15:51   #11
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Компонент.Metods.Свойства_и_методы_ ЛистБокса
Код:
P.Metods.Items.Add('соник');
p.Metods.Items.Add('жаба');
В случае если компонент обозван как р .
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 12.02.2010, 16:25   #12
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Не знаю что ты там такое невертел, но у меня на
Text2:=FOnInsMetod(Self, Text2);
падает на AV. если не описать событие onInsMethod - это не есть гут.
Второе - кажись твоя отрисовка хромает. Неверно отрисовывешь текст. Он смещен на пару пикселей.
I'm learning to live...

Последний раз редактировалось Stilet; 12.02.2010 в 16:28.
Stilet вне форума Ответить с цитированием
Старый 12.02.2010, 16:31   #13
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Это все мелочи жизни, мне вот эту бяку победить .
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 12.02.2010, 16:34   #14
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Какую бяку???
Никакой пустой строки я в выпадающем списке не увидел...
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 12.02.2010, 16:37   #15
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Да нет, он разбивает строку на три - до места вставки, потому строка, которая вставлена из списка и следующая строка - после курсора. А мне надо в ту же строчку. Это видно, когда список появляется. С ним курсор в TMemo переходит на новую строку, а должен стоять там же.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 12.02.2010, 16:54   #16
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Видимо твоя проблема кроится в том что ты не учитываешь тот факт что когда ты нажимаешь энтер (по которому из списка вставлять нужно) то Мемо сам по себе этот Энтер перехватывает и вставляет его тоже.
Вот такой прием:
Код:
function TForm1.HMemo1InsMetod(Sender: TObject; Stroka: string): string;
begin
 HMemo1.SelStart:=length(HMemo1.Text)-2;
 HMemo1.SelLength:=0;
 HMemo1.SelText:=Stroka;
end;
теоретически спасет отца русской демократии. но согласись - просто так это описывать каждому не захочется )
Так что ты либо добавь вставку выбранного по нажатию пробела, либо как-то контролируй нажатие Энтера при открытом списке.
Ферштеен, коллега?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 13.02.2010, 15:14   #17
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Ферштеен, коллега?
Не, новая строка появляется в момент когда ЛистБокс показывается, даже если я ничего не выберу из списка (например нажав ESC). А это очень плохо. ЛистБокс исчезнет, а разрыв в строке останется
И потом я программно вставляю String и в Брекапоинтах там строка без #13+#10 на конце. Нет здесь какая-то загогулина похитрее...
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 15.02.2010, 10:31   #18
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Знаешь, дружище, ты там что-то такого непомерного нахомутал...
Бросай это дело, и начинай сначала... По-моему твоя стратегия тупиковая.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 15.02.2010, 10:35   #19
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Я практически закончил! Осталось только подобрать все неаккуратности.
Вложения
Тип файла: rar Подсветка.rar (25.9 Кб, 42 просмотров)
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика

Последний раз редактировалось Utkin; 15.02.2010 в 14:03.
Utkin вне форума Ответить с цитированием
Старый 15.02.2010, 14:57   #20
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

для адекватного положения выпадающего списка есть предложение кое-что видоизменить... выделяю красным новое...
Код:
private
hh,ww:   Integer;
...
procedure THMemo.ShowMetods();
var
      x, y: Integer; t: tpoint;
begin
 pX:= CaretPos.x;
 pY:= CaretPos.y;

 x:= ww*px + 5; //px*(Font.Size+2)+5;
 y:= hh*py + 3; //py*(Font.Size+2)+5;
...


procedure THMemo.WMPaint(var Message: TWMPaint);
...
 // размер текущего шрифта-
 Canvas.Font.Size := Font.Size;
 ww:= canvas.TextWidth('1');
 hh:= Canvas.TextHeight('1');
...
upd
-------

ммм... устранило смещение по -y- в любом случае, а вот по -x- при длинной строке все равно смещение увеличивается... не пойдеть...от, елки
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation

Последний раз редактировалось raxp; 15.02.2010 в 15:04.
raxp вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Переход на новую строку в Memo Лонли-Локли Компоненты Delphi 12 08.01.2021 05:00
Переход на новую строку delphin100 Общие вопросы Delphi 9 31.05.2012 04:52
Переход на новую строку в Memo1 )Игнат( Общие вопросы Delphi 2 07.07.2009 20:31
Переход на новую строку код13 Ecosasha Общие вопросы C/C++ 12 11.06.2009 18:31
Работа с файлом(переход на новую строку) Rifler Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 1 06.12.2008 23:51