Здравствуйте Дмитрий!!!
То что может WebBrowser-это ЧУДУ!!!
Вопрос: если способ прикрутить << ProgressBar >>, чтобы было как по настоящему...::) и
Скромное желание видеть в каком процессе находитьтся загрузка страницы???
26 2017-02-22 21:07:29
Topic: ProgressBar (1 replies, posted in Russian)
27 2017-02-22 20:53:05
Re: Модуль рассылки (8 replies, posted in Russian)
Думаю да, когда будет время, попробую реализовать.
Простите Дмитрий...у Вас ещё не поивилось чуть-чуть свободного времяни???
28 2017-02-10 18:44:10
Re: Скрипт... (5 replies, posted in Russian)
Я могу помочь только с конкретным вопросом.
Извените за назойливость...
Куда я только невстовлял свой любимый RegExp.Free; в конце скрипта(всеравно помнит своё значения...!!!
ВОПРОС-просьба:
Пожайлуста помогите объеденить(правильно записать) два одинаковых по структуре скрипта в один скрипт...ПОСТ № 1
29 2017-02-10 16:47:24
Re: Скрипт... (5 replies, posted in Russian)
Дмитрий у меня их АЖ:
end;end;end;end;end;end;end;end;end;
подскажитете между какими???
30 2017-02-10 16:01:55
Re: Скрипт... (5 replies, posted in Russian)
ОК!!! Спасибочки ЗА ценную информацию!!!
Дмитрий, а подскажите в моём выше стоящем скрипте ПОСТ № 1...
RegExp по хоже не уничтожает своё значения изо моих растоновок <<begin>> и <<end>>
при новом парсинге если он значения не нашёл, от подставляет предыдущее!!!
Где его правильно расположить вот эту часть в скрипте:
until not RegExp.ExecNext;
RegExp.Free;
31 2017-02-10 10:04:13
Topic: Скрипт... (5 replies, posted in Russian)
Здравствуйте Дмитрий!!!
Помогите пожайлуста объеденить эти два одинаковых по структуре скрипта...
procedure Form1_Button61_OnClick (Sender: string; var Cancel: boolean);
var
HTML : TStringList;
RegExp: TRegExp;
S,LIST,REZYLTAT: String;
i: integer;
d,n: integer;
begin
HTML := TStringList.Create;
RegExp := TRegExp.Create(Form1.Edit5.Text);
RegExp.InputString := (Form1.Memo1.Text);
if RegExp.Exec then
repeat
for i := 1 to RegExp.Match.Count-1 do
begin
if RegExp.Match[i]<>'' then
HTML.Add(RegExp.Match[i]);
end;
until not RegExp.ExecNext;
RegExp.Free;
//---------------------------------------------- ТЕГИ ---------------------------------------------------------------------------
begin
if HTML.Text <>'' then S:= HTML.Text;
S:= ReplaceStr(S, '"', '*'); // ОБЯЗАТЕЛЬНО..., иначе выдаёт ошибку при записи в ( Б.Д. )....
S:= ReplaceStr(S, Form1.Edit6.Text, Form1.Edit7.Text);
S:= ReplaceStr(S, Form1.Edit8.Text, Form1.Edit9.Text);
S:= ReplaceStr(S, Form1.Edit12.Text, Form1.Edit13.Text);
S:= ReplaceStr(S, Form1.Edit14.Text, Form1.Edit15.Text);
S:= ReplaceStr(S, Form1.Edit16.Text, Form1.Edit17.Text);
S:= ReplaceStr(S, Form1.Edit18.Text, Form1.Edit19.Text);
S:= ReplaceStr(S, Form1.Edit20.Text, Form1.Edit21.Text);
S:= ReplaceStr(S, Form1.Edit22.Text, Form1.Edit23.Text);
S:= ReplaceStr(S, Form1.Edit24.Text, Form1.Edit25.Text);
S:= ReplaceStr(S, Form1.Edit26.Text, Form1.Edit27.Text);
HTML.Free;
//-------------------------------------- нет пустых строчек --------------------------------------------------------------------
begin
if S <>'' then S:=Trim(S);
S := ReplaceStr(S,#13#10#13#10, #13#10);
S := ReplaceStr(S,#13#10#13#10, #13#10);
S := ReplaceStr(S,#13#10#13#10, #13#10);
//---------------------------------------------- ПЕРЕНОС С НОВОЙ СТРОЧКИ -------------------------------------------------------
begin
if S <>'' then S:=Trim(S);
S:= ReplaceStr(S, Form1.Edit28.Text, #13#10);
S:= ReplaceStr(S, Form1.Edit29.Text, #13#10);
S:= ReplaceStr(S, Form1.Edit30.Text, #13#10);
//-------------------------------------------------- ЕЩЁ РАЗ ТЕГИ ---------------------------------------------------------------
begin
if S <>'' then S:=Trim(S);
S:= ReplaceStr(S, Form1.Edit31.Text, Form1.Edit32.Text);
S:= ReplaceStr(S, Form1.Edit33.Text, Form1.Edit34.Text);
S:= ReplaceStr(S, Form1.Edit35.Text, Form1.Edit36.Text);
//--------------------------------------------- ЕЩЁ РАЗ нет пустых строчек -------------------------------------------------------
begin
if S <>'' then S:=Trim(S);
S := ReplaceStr(S,#13#10#13#10, #13#10);
S := ReplaceStr(S,#13#10#13#10, #13#10);
S := ReplaceStr(S,#13#10#13#10, #13#10);
//------------------------------- ВЫРАВНИВАЕМ В ПЕРЕМЕННОЙ << S >> ВСЁ ПО ЛЕВОМУ КРАЮ -------------------------------------------
begin
if S <>'' then S:=Trim(S);
//--------------------------------- какое значение...если данных << НЕТУ >> -----------------------------------------------------
begin
if S <>'' then // если данные есть
LIST :=(S) else LIST:= Form1.Edit37.Text; //какое значение...если данных НЕТ..
//--------------------------------- какое значение...если данные длиннее указанной длины --------------------------------
begin
n := trunc(Form1.Edit38.Value); // длинна строки постояная....( по умолчанию 10.000 символов )...
d :=Length(LIST); //длинна строки
if d > n then REZYLTAT:= (Form1.Edit39.Text) else REZYLTAT:=(LIST); // если длинна строки > 70 тогда ....
Form7.Memo1.Text:=(REZYLTAT);
Form1.Button62.Click ;
end;end;end;end;end;end;end;end;end;
и
procedure Form1_Button62_OnClick (Sender: string; var Cancel: boolean);
var
HTML_1 : TStringList;
RegExp_1: TRegExp;
S_1,LIST,REZYLTAT_1: String;
i_1: integer;
d_1,n_1: integer;
begin
HTML_1 := TStringList.Create;
RegExp_1 := TRegExp.Create(Form1.Edit41.Text);
RegExp_1.InputString := (Form1.Memo1.Text);
if RegExp_1.Exec then
repeat
for i := 1 to RegExp_1.Match.Count-1 do
begin
if RegExp_1.Match[i]<>'' then
HTML_1.Add(RegExp_1.Match[i]);
end;
until not RegExp_1.ExecNext;
RegExp_1.Free;
//---------------------------------------------- ТЕГИ ---------------------------------------------------------------------------
begin
if HTML_1.Text <>'' then S_1:= HTML_1.Text;
S_1:= ReplaceStr(S_1, '"', '*'); // ОБЯЗАТЕЛЬНО..., иначе выдаёт ошибку при записи в ( Б.Д. )....
S_1:= ReplaceStr(S_1, Form1.Edit42.Text, Form1.Edit43.Text);
S_1:= ReplaceStr(S_1, Form1.Edit44.Text, Form1.Edit45.Text);
S_1:= ReplaceStr(S_1, Form1.Edit46.Text, Form1.Edit47.Text);
S_1:= ReplaceStr(S_1, Form1.Edit48.Text, Form1.Edit49.Text);
S_1:= ReplaceStr(S_1, Form1.Edit50.Text, Form1.Edit51.Text);
S_1:= ReplaceStr(S_1, Form1.Edit52.Text, Form1.Edit53.Text);
S_1:= ReplaceStr(S_1, Form1.Edit54.Text, Form1.Edit55.Text);
S_1:= ReplaceStr(S_1, Form1.Edit56.Text, Form1.Edit57.Text);
S_1:= ReplaceStr(S_1, Form1.Edit58.Text, Form1.Edit59.Text);
S_1:= ReplaceStr(S_1, Form1.Edit60.Text, Form1.Edit61.Text);
HTML_1.Free;
//-------------------------------------- нет пустых строчек --------------------------------------------------------------------
begin
if S_1 <>'' then S_1:=Trim(S_1);
S_1 := ReplaceStr(S_1,#13#10#13#10, #13#10);
S_1 := ReplaceStr(S_1,#13#10#13#10, #13#10);
S_1 := ReplaceStr(S_1,#13#10#13#10, #13#10);
//---------------------------------------------- ПЕРЕНОС С НОВОЙ СТРОЧКИ -------------------------------------------------------
begin
if S_1 <>'' then S_1:=Trim(S_1);
S_1:= ReplaceStr(S_1, Form1.Edit62.Text, #13#10);
S_1:= ReplaceStr(S_1, Form1.Edit63.Text, #13#10);
S_1:= ReplaceStr(S_1, Form1.Edit64.Text, #13#10);
//-------------------------------------------------- ЕЩЁ РАЗ ТЕГИ ---------------------------------------------------------------
begin
if S_1 <>'' then S_1:=Trim(S_1);
S_1:= ReplaceStr(S_1, Form1.Edit65.Text, Form1.Edit66.Text);
S_1:= ReplaceStr(S_1, Form1.Edit67.Text, Form1.Edit68.Text);
S_1:= ReplaceStr(S_1, Form1.Edit69.Text, Form1.Edit70.Text);
//--------------------------------------------- ЕЩЁ РАЗ нет пустых строчек -------------------------------------------------------
begin
if S_1 <>'' then S_1:=Trim(S_1);
S_1 := ReplaceStr(S_1,#13#10#13#10, #13#10);
S_1 := ReplaceStr(S_1,#13#10#13#10, #13#10);
S_1 := ReplaceStr(S_1,#13#10#13#10, #13#10);
//------------------------------- ВЫРАВНИВАЕМ В ПЕРЕМЕННОЙ << S >> ВСЁ ПО ЛЕВОМУ КРАЮ -------------------------------------------
begin
if S_1 <>'' then S_1:=Trim(S_1);
//--------------------------------- какое значение...если данных << НЕТУ >> -----------------------------------------------------
begin
if S_1 <>'' then // если данные есть
LIST_1 :=(S) else LIST_1:= Form1.Edit71.Text; //какое значение...если данных НЕТ..
//--------------------------------- какое значение...если данные длиннее указанной длины -------------------------------
begin
n_1 := trunc(Form1.Edit72.Value); // длинна строки постояная....( по умолчанию 10.000 символов )...
d_1 :=Length(LIST_1); //длинна строки
if d_1 > n_1 then REZYLTAT_1:= (Form1.Edit73.Text) else REZYLTAT_1:=(LIST_1); // если длинна строки > 70 тогда ....
Form7.Memo2.Text:=(REZYLTAT_1);
Form1.Button63.Click ;
end;end;end;end;end;end;end;end;end;
- У меня проблемка, где правилно раставить <<begin>> и <<end>>
- и RegExp по хоже не уничтожает своё значения изо моих растоновок <<begin>> и <<end>>
при новом парсинге если он значения не нашёл, от подставляет предыдущее!!!
Помогите пожайлуста объеденить эти два одинаковых по структуре скрипта в один...
32 2017-02-08 22:52:08
Re: Модуль рассылки (8 replies, posted in Russian)
Здравствуйте Дмитрий!!! Это замечательный пример!!!
Давайте пороссуждаем все вместе!!!
===========================================
Мы Все знаем, что при ОГРОМНОЙ рассылке писем с одного адресса...можно попасть БАН!!!
Вопрос:
Дмитрий...к Вашему выше примеру есть возможность дописать...например:
- Создаём отдельную форму << мои емайлы >>, где есть грид
его мы заполняем своими емайломи с которых будет идти рассылка писем!!!
- когда мы кликаем на << frmSendMail.Button1.Click >>...происходит следущее
письмо отправляется, но отправитель письма...на каждое отправления меняется
по очереди из списка формы << мои емайлы >> .
P./S. если с нашего емайла произошла ошибка при очередном отправлении письма, то
ЛЮБУЮ СИСТЕМНУЮ ОШИБКУ ИГНОРИРОВАТЬ, заменяя на наше сообщение к примеру:
<< Произошла ошибка при отправлении письма с адресса << RZ-007@yandex.ru >>
далее...наш емайл << RZ-007@yandex.ru >> перемещается в чёрный список,
а отправка писем продолжается так же используя из формы << мои емайлы >>по очерёдно
перебирать адресса отправителя......
Заранее извените...,если Вам не сложно...
33 2017-02-06 10:58:56
Topic: Выровнять.. (1 replies, posted in Russian)
Здравствуйте Дмитрий!!!
Так можно многое:
S := ReplaceStr(S,#13#10#13#10, #13#10); //нет пустых строчек
S:= ReplaceStr(S, '12345', '54321'); //замена одного на другое...
У меня в переменной текст:
Всем хорошего,
при хрошего
настроения!!!
Вопрос: Как выровнять текст в переменной " S " по левому краю...? т.е. надо так...
Всем хорошего,
при хрошего
настроения!!!
34 2017-02-03 10:23:55
Re: Memo... (11 replies, posted in Russian)
Извените а есть проект примера:
1)
выделить только какой либо один текст Пост № 7
2) если в мемо есть такой ещё же текст, то по клику на битон "далее" в мемо покажет его...
3) в лабере подсчитать сколько найдено повторов текста в мемо которого указали в поиске???
35 2017-02-02 20:08:24
Re: Edit... (16 replies, posted in Russian)
Здравствуйте Дмитрий!!!
1.)
Form13.Edit4.SelectAll; //выбираем все
Form13.Edit4.CopyToClipboard; //копируем в буфер
А как из буфера вставить в Form1.Edit.Text:= ????????
2.) Не могли бы Вы взглянуть пост № 6...
36 2017-02-02 01:19:09
Re: Edit... (16 replies, posted in Russian)
Дмитрий доброго времени суток!!!
есть такой скрипт и он РАБОЧИЙ:
procedure Form7_OnShow (Sender: string; Action: string);
begin
Timer := TTimer.Create(nil);
Timer.Interval := 1000;
iTimer := 4; //задаём время в сек...??????????????
Timer.Enabled := True;
Timer.OnTimer := @OnTimer;
end;
procedure OnTimer (Sender: TObject);
begin
Form7.Label7.Caption := FormatDateTime('hh:nn:ss', iTimer/86400);
Dec(iTimer);
if iTimer < 0 then
begin
Timer.Enabled := False;
end;
end;
Вопрос есть способ управлять *** iTimer := 4; //задаём время в сек...?????????????? ***
т.е в Edit1 втавили цифру и наш скрипт читает информацию из Edit1...???
37 2017-02-01 22:54:53
Re: Memo... (11 replies, posted in Russian)
Доброго времени суток!!!
Дмитрий подскажите скрипт или SQL-запрос для Memo1...если такое возможно:
Memo1 лежит на Form1...оно не привязано к таблице!!!
===============================================
В Edit1 вводим нужное слово для поиска в Memo1....клик на Button1
а) В Memo1 видем все найденые слова, если можно их как то все выделить(чтоб можно бало
увидеть их нахождение в Memo1???
б) есть способ подсчитать найденый текст в Memo1 в результате поиска???
38 2017-02-01 19:41:27
Re: Помогите найти проект... (8 replies, posted in Russian)
Дмитрий...3-4 дня у Вас спрашивал, кто-то из форумчан за проект:
Если способ отправлять почту по запланированной дате и времени...
Ваш ответ был: НЕТ, но постараюсь реализовать...
Вопрос:
У Вас было времечко на этот реализовать это...или я что то пропустил???
39 2017-02-01 19:32:28
Re: Edit... (16 replies, posted in Russian)
RZ-007
Don't forget to close the second script with End; before sl.free;
JB
Да...Да конечно...!!!
СПАСИБО...!!!
41 2017-02-01 15:56:01
Re: MessageDlgTimeOut (2 replies, posted in Russian)
Это просто ЧУДО...СПАСИБО,,,!!!
42 2017-02-01 11:37:36
Topic: Edit... (16 replies, posted in Russian)
Дмитрий...
Как сделать...,чтоб CheckBox1 запоминал своё значение МЫ знаем...
(кому интересно...можно посмотреть в моих темах...)
Как мемо запоминает свои данные при выходе и входе в прогу:
if FileExists('text-1.txt') then Form1.Memo1.Lines.LoadFromFile('text-1.txt'); // АДРЕСА
Form1.Memo1.Lines.SaveToFile('text-1.txt'); // АДРЕСА
ВОПРОС:
А можно точно такое же, как с Memo1, только для Edit...???
(P.S. в Edit постоянно данные меняются...)
43 2017-02-01 06:52:56
Topic: MessageDlgTimeOut (2 replies, posted in Russian)
Здравствуйте Дмитрий!!!
Есть такой скрипт...Собщение закрывается автоматически:
procedure Form1_Button1_OnClick (Sender: string; var Cancel: boolean);
var
iResult: integer;
begin
iResult := MessageDlgTimeOut('Текст', 'Название', MB_YESNO+MB_ICONSTOP, 2000); // авто-закр.2 сек
if iResult = IDTIMEOUT then ShowMessage('1-вариант ! ! !');
if iResult = IDYES then ShowMessage('2-вариант ! ! !');
if iResult = IDNO then ShowMessage('3-вариант ! ! !');
end;
Это работает на УРА...!!!........не принципиально..., НО.....
ВОПРОС:
а) при открытии Собщение звук как у "Error" (ухо режит) есть способ заменить на более приятный звук (как просто инфо)???
б) есть способ вставить свой звук (mp3)...???
с) есть способ вобще отключить звук при открытии этого сообщения "MessageDlgTimeOut"...???
44 2017-01-31 17:47:57
Re: Нужна помощь... (89 replies, posted in Russian)
Вау...даже лучше, чем я ожидал!!!
СПАСИБО...!!!...СПАСИБО...!!!...СПАСИБО...!!!
45 2017-01-31 09:59:09
Re: Нужна помощь... (89 replies, posted in Russian)
Здравсствуйте Дмитрий!!!
Использую такой скрипт:
procedure Form1_Button1_OnClick (Sender: string; var Cancel: boolean);
var
i: integer;
S : String;
begin
i := Form1.TableGrid1.RowCount - 1;
//считаем количество записей в Б/Д...
S := VarToStr ( SQLExecute('SELECT count(id) FROM GIS ;') );
if S <>'' then
begin
if MessageDlg(' ВЫВЕСТИ ВСЕ << ' + S + ' >> ЗАПИСЕЙ ? ? ? ' , mtInformation, mbYes+mbNo, 0) = mrYes
then
begin // (1-условие) если Да...делаем:
Form2.Show;
end else
begin // (2-условие) если Нет...делаем:
Form3.Show;
end;
end else
begin // (3-условие) если....нажимаем на крестик в верхнем правом углу у <<MessageDlg>> ...,то
// фома <<MessageDlg>> просто закрылась не выполняя ни каких условий!!!
Cancel := True;
end;
end;
Поскажите пожайлуста как поправить скрипт..., что бы выполнялось (3-условие) ???
А то на данный момент нажимая на крестик в верхнем правом углу у <<MessageDlg>>
выполняется (2-условие)...!!!
46 2017-01-30 14:02:29
Re: TWebBrowser (32 replies, posted in Russian)
Дмитрий не могли бы Вы взглянуть пост выше № 31
48 2017-01-30 13:30:58
Re: Парсинг... (10 replies, posted in Russian)
RZ-007
К сожалению не понял вашего вопроса, опишите подробней.
Form7.Memo14.Lines.Add(ReplaceStr(RegExp13.Match[oi], '<STRONG><EM>', ''));
Form7.Memo14.Lines.Add(ReplaceStr(RegExp13.Match[oi], '<STRONG>', ''));
Form7.Memo14.Lines.Add(ReplaceStr(RegExp13.Match[oi], '<STR', ''));
Есть способ объяденить эти три строчки в одну...???
49 2017-01-29 19:36:49
Re: [Script] Regular expression (14 replies, posted in FAQ)
Доброго времени суток Дмитрий!!!
При использования Regular expression имею:
++++++++++++++++++++++++++++++++++
Form1.Memo1.Lines.Add(RegExp.Match[i]);
========== 2 часть =================
T :=Form1.Memo1.Text;
if T <>'' then // если данные есть
Telefon:= (T) else Telefon :='НЕТ';
Form1.Memo2.Text := Telefon;
Когда в Form1.Memo1 попадает реально <<число или текст аль символы >> , то вторая часть скрипта работает!!!
...НО когда благодаря Regular expression возвращае в Form1.Memo1 ничего из <<числа или текста аль символов >>...
то в МЕМО мы не чего не видим...получается в нём НЕТ значений...
(но если поставить курсор от мыши, то он будет находиться как бы на второй сточки в МЕМО,
хя значений в нём НЕТ!!!)...и тогда вторая часть НЕ РАБОТАЕТ!!!
Дмитрий подскажите как это можно вылечить???(может как то сделать проверку в переменной "T" на предмет
пустые строки...или есть ли числа или символы???)
50 2017-01-28 01:18:17
Re: Парсинг... (10 replies, posted in Russian)
Доброго времени суток!!!
Form7.Memo14.Lines.Add(ReplaceStr(RegExp13.Match[oi], '<STRONG><EM>'' or ''<STRONG>', ''));
Помогите правильно объеденить ('<STRONG><EM>'' or ''<STRONG>')....???