вопрос про Memo
Модераторы: Duncon, Naeel Maqsudov, Игорь Акопян, Хыиуду
Здраствуйте все. У меня такой вопрос. Я применяю метод OpenDialog у меня на форме расположен Memo, в котором прописывается путь файла. Скажите как правильно использовать к Memo метод Delete чтобы осталось только название файла и его расширенее. Или какой метод лучше использовать. Заранее благодарна.
А в каком сомпоненте или классе сеть метод OpenDialog?
- Игорь Акопян
- Сообщения: 1440
- Зарегистрирован: 13 окт 2004, 17:11
- Откуда: СПБ
- Контактная информация:
1. Для чего используется Мемо? Это по смыслу многострочный ввод текста...
2. Используйте ExtractFilePath, ExtractFileName, ExtractFileExt из SysUtils для извлечения различных частей пути.
Zroman OpenDialog это и есть компонент с закладки Dialogs
2. Используйте ExtractFilePath, ExtractFileName, ExtractFileExt из SysUtils для извлечения различных частей пути.
Zroman OpenDialog это и есть компонент с закладки Dialogs
Memo1.Lines[n_строки] := ExtractFileName(Memo1.Lines[n_строки]);


С уважением, Lost Angel...
У меня в программе в Memo в цикле добавляются строки. После цикла курсор стоит на самой нижней строке, полоса прокрутки в самом низу. Как программным путем перевести курсор на первую строку? Я пробовал
Memo2.SetFocus;
Memo2.CaretPos:=point(1,1);
Memo2.SelStart:=0;
Memo2.ScrollBy(-Memo2.Lines.Count,-Memo2.Lines.Count);
Memo2.Update;
Но толку мало, курсор перемещается на верх текущего фрагмента, но полоса прокрутки остается внизу.
Memo2.SetFocus;
Memo2.CaretPos:=point(1,1);
Memo2.SelStart:=0;
Memo2.ScrollBy(-Memo2.Lines.Count,-Memo2.Lines.Count);
Memo2.Update;
Но толку мало, курсор перемещается на верх текущего фрагмента, но полоса прокрутки остается внизу.
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.

Memo1.Perform(EM_LINESCROLL, 0, X); // X - количество строк, на которое скролить текст.
т.е. Чтобы быть увереным, что показывается первая строка делаем:
Memo1.Perform(EM_LINESCROLL, 0, -Memo1.Lines.Count);
С уважением, Lost Angel...