Чтение онлайн

ЖАНРЫ

Советы по Delphi. Версия 1.4.3 от 1.1.2001

Озеров Валентин

Шрифт:

 case DocOutput.State of

 icDocBegin:

begin

Memo1.Lines.Clear;

Data := '';

end;

 icDocData:

begin

DocOutput.GetData(S, VT_BSTR);

Data := Data + S;

end;

 icDocEnd:

begin

{
Теперь удаляем все HTML-тэги и отображаем текст }

Parser := TSimpleHTMLParser.Create(Data);

ALine := '';

while Parser.FToken <> etEnd do begin

case Parser.FToken of

etHTMLTag:

begin

if Parser.TokenHTMLTagIs('BR') then ALine := ALine + #13#10;

if Parser.TokenHTMLTagIs('P') then ALine := ALine + #13#10#13#10;

end;

etSymbol:

ALine := ALine + ' ' + Parser.FTokenString;

etLineEnd:

begin

Memo1.Lines.Add(ALine);

ALine := '';

end;

end;

Parser.NextToken;

end;

Memo1.Lines.Add(ALine);

Memo1.SelStart := 0;

SendMessage(Memo1.Handle, EM_ScrollCaret, 0, 0);

end;

 end;

 Refresh;

end;

Захват текущего URL у MSIE

The_Sprite советует:

Пример показывает, как найти окно Internet Explorer, и захватить из него текущий URL, находящийся в поле адреса IE. В Исходнике используются простые функции win32 api на delphi.

{-------------------------------------------------------}

Function GetText(WindowHandle: hwnd):string;

var

 txtLength : integer;

 buffer: string;

begin

 TxtLength := SendMessage(WindowHandle, WM_GETTEXTLENGTH, 0, 0);

 txtlength := txtlength + 1;

 setlength(buffer, txtlength);

 sendmessage(WindowHandle, wm_gettext, txtlength, longint(@buffer[1]));

 result := buffer;

end;

function GetURL:string;

var ie, toolbar, combo, comboboxex, edit, worker, toolbarwindow: hwnd;

begin

 ie := FindWindow(pchar('IEFrame'), nil);

 worker := FindWindowEx(ie, 0, 'WorkerA', nil);

 toolbar := FindWindowEx(worker, 0, 'rebarwindow32', nil);

 comboboxex := FindWindowEx(toolbar, 0, 'comboboxex32', nil);

 combo := FindWindowEx(comboboxex, 0, 'ComboBox', nil);

 edit := FindWindowEx(combo, 0, 'Edit', nil);

 toolbarwindow := FindWindowEx(comboboxex, 0, 'toolbarwindow32', nil);

 result := GetText(edit);

{-------------------------------------------------------}

procedure TForm1.Button1Click(Sender: TObject);

begin

 showmessage(GetURL);

end;

Мультимедиа 

Звук 

Заставьте

приложение Delphi 2 `петь`

Delphi 2 

Тема: Как заставить приложение Delphi 2 `петь`.

Данный совет демонстрирует четыре различных способа как заставить ваше Delphi 2.0 приложение `петь`, т.е. загружать и проигрывать звуковой файл:

1. Для проигрывания звукового файла используйте непосредственно функцию sndPlaySound.

2. Считывайте звуковой файл в память, затем для его проигрывания используйте sndPlaySound.

3. Используйте sndPlaySound для непосредственного проигрывания звуковых файлов, расположенных в файлах ресурсов, прилинкованных к вашему приложению.

4. Считывайте звуковой файл, располагаемый в файле ресурса, прилинкованному к вашему приложению, в память, и затем для его проигрывания используйте sndPlaySound.

Для построения проекта вам понадобиться:

1. Создайте звуковой файл с именем 'hello.wav' в каталоге проекта.

2. Создайте текстовый файл с именем 'snddata.rc' в каталоге проекта.

3. Добавьте следующую строку к файлу 'snddata.rc':

HELLO WAVE hello.wav
.

4. В dos-сессии перейдите в ваш каталог приложения и скомпилируйте .rc-файл, используя компилятор ресурсов Borland (brcc32.exe): введите путь к brcc32.exe и передайте 'snddata.rc' в качестве параметра.

Пример:

bin\brcc32 snddata.rc

Это создаст файл 'snddata.res', который Delphi слинкует с EXE-файлом вашего приложения.

Далее приведен необходимый вам код:

Поделиться с друзьями: