Lazarus) не работает Memo1.Perform( EM_GETFIRSTVISIBLELINE,

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Lazarus) не работает Memo1.Perform( EM_GETFIRSTVISIBLELINE,

Сообщение ramil » 11.10.2008 17:37:10

(версия 0.9.24, vista)
Lazarus) не работает Memo1.Perform( EM_GETFIRSTVISIBLELINE, 0, 0 );

Как ввести обработку этого сообщения в этот лазарус?
(там есть Perform, но нет обработки именно данного сообщения).
ramil
незнакомец
 
Сообщения: 3
Зарегистрирован: 11.10.2008 17:03:11

Re: Lazarus) не работает Memo1.Perform( EM_GETFIRSTVISIBLELINE,

Сообщение v-t-l » 12.10.2008 19:35:39

Код: Выделить всё
uses Windows, Messages;

{ TForm1 }

procedure TForm1.Button1Click(Sender: TObject);
var i: Integer;
begin
  //Memo1.Perform( EM_GETFIRSTVISIBLELINE, 0, 0);
  i := SendMessage( Memo1.Handle, EM_GETFIRSTVISIBLELINE, 0, 0);
  Caption := 'First visible line #' + IntToStr(i);
end;


Но, врядли будет работать где-нибудь кроме windows.
v-t-l
энтузиаст
 
Сообщения: 734
Зарегистрирован: 13.05.2007 16:27:22
Откуда: Belarus

Re: Lazarus) не работает Memo1.Perform( EM_GETFIRSTVISIBLELINE,

Сообщение ramil » 13.10.2008 18:54:31

Спасибо, SendMessage - работает!
---------------------
Может подскажете, как выводить несколько страниц html в одно окно IE:
Так
ShellExecute(Handle, 'open','iexplore.exe', PChar(s), nil,1);
каждый новый вызов открывает еще одно окно IE,
и это не совсем хорошо,
собственный просмотрщик лазаруса - совсем не подходит (слабоват)
ramil
незнакомец
 
Сообщения: 3
Зарегистрирован: 11.10.2008 17:03:11

Re: Lazarus) не работает Memo1.Perform( EM_GETFIRSTVISIBLELINE,

Сообщение B4rr4cuda » 14.10.2008 13:42:39

ramil писал(а):Может подскажете, как выводить несколько страниц html в одно окно IE:

Ну, тут несколько вариантов:
1. использовать какую нить библочку подсунутую экплореру в качестве расширения - гемморно и бестолково.
2. Килять предыдущее окно и запускать новое - бестолково
3. Использовать winapi и программно вставить в адресную строку новый урл и так же программно нажать ентер или кнопу "go" (или чего там у осла) - вполне приемлемый вариант. Начинать отсюда.
Аватара пользователя
B4rr4cuda
энтузиаст
 
Сообщения: 693
Зарегистрирован: 28.12.2007 07:48:35

Re: Lazarus) не работает Memo1.Perform( EM_GETFIRSTVISIBLELINE,

Сообщение Attid » 14.10.2008 17:08:11

4, поискать ключик у ИЕ с которым он открывает ЮРЛ в последнем окне.
Аватара пользователя
Attid
долгожитель
 
Сообщения: 2585
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 40

Рейтинг@Mail.ru