Модераторы: Snowy, MetalFan, bems, Poseidon

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проверить вхождение любой строки из списка в текст 
:(
    Опции темы
muratboy31
  Дата 13.1.2010, 14:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 7.1.2010

Репутация: нет
Всего: нет



Я хочу кодом, добавив слово я хочу научиться, но мне интересно, как я могу использовать текст или INI-файл или БД делать! от одного из этих файлов будет привлекать Yane слов!

Код

var
i,j:Integer;
aranan:AnsiString;
begin
aranan:=ComboBox1.Text;
Form2.Text:=aranan;
i:=Pos('Admin',aranan);
j:=Pos('Member',aranan);
if (i<>0)or(j<>0) Then
begin
ShowMessage(No View !!!');
WebBrowser1.GoHome;
ComboBox1.Text:='about:blank';
exit;
end;


Это сообщение отредактировал(а) muratboy31 - 13.1.2010, 14:18
PM MAIL   Вверх
bems
Дата 13.1.2010, 18:03 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 3400
Регистрация: 5.1.2006

Репутация: 18
Всего: 88



Еще раз и помедленней.


--------------------
Обижено школьников: 8
PM MAIL   Вверх
profesiachuvak
Дата 13.1.2010, 18:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 283
Регистрация: 7.11.2009
Где: Беларусь, Минск

Репутация: 1
Всего: 4



Цитата(muratboy31 @  13.1.2010,  14:18 Найти цитируемый пост)
Я хочу кодом, добавив слово я хочу научиться, но мне интересно, как я могу использовать текст или INI-файл или БД делать! от одного из этих файлов будет привлекать Yane слов!


Это Вы англо-русским переводчиком пользовались? Where are you from? smile 


--------------------
Закон Мерфи :если есть вероятность того, что какая-нибудь неприятность может случиться, то она обязательно произойдет.
PM MAIL   Вверх
muratboy31
  Дата 13.1.2010, 19:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 7.1.2010

Репутация: нет
Всего: нет



Sorry for my bad Russian...
I am from Turkey
 smile

what I wanted to ask was;

with the code below I can block words I want but I have more words to block and I want to know how can I load more words from a file ???

 
Код

var
i,j:Integer;
aranan:AnsiString;
begin
aranan:=ComboBox1.Text;
Form2.Text:=aranan;
i:=Pos('Admin',aranan);
j:=Pos('Member',aranan);
if (i<>0)or(j<>0) Then
begin
ShowMessage(No View !!!');
WebBrowser1.GoHome;
ComboBox1.Text:='about:blank';
exit;
end;


Это сообщение отредактировал(а) muratboy31 - 13.1.2010, 19:39
PM MAIL   Вверх
RomanEEP
Дата 13.1.2010, 20:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 424
Регистрация: 18.5.2006
Где: Коломна

Репутация: 1
Всего: 8



Код

var
  i, j: Integer;
  aranan: AnsiString;
  BlockedUsers: TStringList;
begin
  aranan:=ComboBox1.Text;
  Form2.Text:=aranan;
  BlockedUsers := TStringList.Create;
  try
    BlockedUsers.LoadFromFile('users.txt');
    if BlockedUsers.IndexOf(aranan) <> -1 then
    begin
      ShowMessage(No View !!!');
      WebBrowser1.GoHome;
      ComboBox1.Text:='about:blank';
     exit;
  end;
  finally
    BlockedUsers.Free;
  end;

users.txt is an ordinary text file where each line is the blocked word
PM MAIL   Вверх
Данкинг
Дата 13.1.2010, 20:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 11
Всего: 130



You've to create and use TStringList:
Код

var
rrr:TStringList;
begin
rrr.create;
rrr.loadfromfile('spisok.txt');
....
rrr.free;
end;

('spisok.txt' is the file you keep your "banned" words in)
 smile 



--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
profesiachuvak
Дата 13.1.2010, 20:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 283
Регистрация: 7.11.2009
Где: Беларусь, Минск

Репутация: 1
Всего: 4



Load from INI file :

Код

var IniFile: TIniFile; 
begin 
IniFile := TIniFile.Create('Notebook.ini');
s:=IniFile.ReadString('MainOptions', 'Base', '');


INI file must contain "Base ...anything here...''.


--------------------
Закон Мерфи :если есть вероятность того, что какая-нибудь неприятность может случиться, то она обязательно произойдет.
PM MAIL   Вверх
muratboy31
Дата 13.1.2010, 20:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 7.1.2010

Репутация: нет
Всего: нет



thanks for helps but there is a problem !!! lets say i have xxx in users.txt file, if i type www.xxx.com to  combobox1 then it doesnt block it... it only blocks if i type xxx... but i want it to block anything with xxx for example: www.xxx.com, xxx.com, http://xxx.comhttp://www.xxx.com     like wildcard        thanks in advance

Код

procedure TForm2.WebBrowser1DownloadBegin(Sender: TObject);
var
aranan:AnsiString;
BlockedUsers: TStringList;
begin
aranan:=ComboBox1.Text;
Form2.Text:=aranan;
BlockedUsers := TStringList.Create;
  try
    BlockedUsers.LoadFromFile('users.txt');
    if BlockedUsers.IndexOf(aranan) <> -1 then
    begin
      if RadioButton2.Checked Then
      begin
      ShowMessage('No View');
      WebBrowser1.GoHome;
      ComboBox1.Text:='http://www.google.com';
      exit;
      end;
    end;
finally
    BlockedUsers.Free;
end;
end;

PM MAIL   Вверх
artsb
Дата 13.1.2010, 21:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2280
Регистрация: 17.7.2007
Где: центр Вселенной

Репутация: 1
Всего: 64



Цитата(muratboy31 @  13.1.2010,  20:32 Найти цитируемый пост)
but i want it to block anything with xxx for example: www.xxx.com, xxx.com, http://xxx.comhttp://www.xxx.com  

Код

as: AnsiString;
// insert string into as
// ...
if as.Pos('xxx') then
begin
 // some operations
end



--------------------
Чем отличается умный человек от мудрого?
Умный - выпутается из любой ситуации.
Мудрый - просто в неё не попадёт.
PM MAIL   Вверх
muratboy31
Дата 13.1.2010, 21:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 7.1.2010

Репутация: нет
Всего: нет



it didnt work like that !!!  smile 

Код

procedure TForm2.WebBrowser1DownloadBegin(Sender: TObject);
var
aranan:AnsiString;
BlockedUsers: TStringList;
begin
aranan:=ComboBox1.Text;
Form2.Text:=aranan;
BlockedUsers := TStringList.Create;
  try
    BlockedUsers.LoadFromFile('users.txt');
    if aranan.pos(BlockedUsers.IndexOf) then
    begin
      if RadioButton2.Checked Then
      begin
      ShowMessage('No View');
      WebBrowser1.GoHome;
      ComboBox1.Text:='http://www.google.com';
      exit;
      end;
    end;
finally
    BlockedUsers.Free;
end;
end;


Это сообщение отредактировал(а) muratboy31 - 13.1.2010, 21:21
PM MAIL   Вверх
Демо
Дата 13.1.2010, 21:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1278
Регистрация: 3.11.2005

Репутация: 7
Всего: 50



Цитата(muratboy31 @  13.1.2010,  21:16 Найти цитируемый пост)
it didnt work like that !!! 


Код

BlockedUsers := TStringList.Create;
BlockedUsers.Sorted := True;



--------------------
    
PM MAIL ICQ Skype   Вверх
muratboy31
Дата 13.1.2010, 21:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 7.1.2010

Репутация: нет
Всего: нет



no no it gives error here ;

 
Код

if aranan.pos(BlockedUsers.IndexOf) then


Код

procedure TForm2.WebBrowser1DownloadBegin(Sender: TObject);
var
aranan:AnsiString;
BlockedUsers: TStringList;
begin
aranan:=ComboBox1.Text;
Form2.Text:=aranan;
BlockedUsers := TStringList.Create;
  try
    BlockedUsers.LoadFromFile('users.txt');
  if aranan.pos(BlockedUsers.IndexOf) then
    begin
      if RadioButton2.Checked Then
      begin
      ShowMessage('No View');
      WebBrowser1.GoHome;
      ComboBox1.Text:='http://www.google.com';
      exit;
      end;
    end;
finally
    BlockedUsers.Free;
end;
end;



Это сообщение отредактировал(а) muratboy31 - 13.1.2010, 21:34
PM MAIL   Вверх
Демо
Дата 13.1.2010, 21:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1278
Регистрация: 3.11.2005

Репутация: 7
Всего: 50



Цитата(muratboy31 @  13.1.2010,  21:31 Найти цитируемый пост)
 if aranan.pos(BlockedUsers.IndexOf) then



Compare your code and 
RomanEEP - 

Код

if BlockedUsers.IndexOf(aranan) <> -1 then






--------------------
    
PM MAIL ICQ Skype   Вверх
muratboy31
Дата 13.1.2010, 21:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 7.1.2010

Репутация: нет
Всего: нет



i used this code 
Код

if BlockedUsers.IndexOf(aranan) <> -1 then  
but if i have xxx in users.txt file and if i type www.xxx.com to  combobox1 then it doesnt block it... it only blocks if i type xxx... but i want it to block anything with xxx for example: www.xxx.com, xxx.com, http://xxx.comhttp://www.xxx.com            thats why i was looking for a help with wildcards        




Это сообщение отредактировал(а) muratboy31 - 13.1.2010, 21:41
PM MAIL   Вверх
Демо
Дата 13.1.2010, 21:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1278
Регистрация: 3.11.2005

Репутация: 7
Всего: 50



Код

var
  aranan:AnsiString;
  BlockedUsers: TStringList;
  i: Integer;
begin
  aranan:=ComboBox1.Text;
  Form2.Text:=aranan;
  BlockedUsers := TStringList.Create;
  try
    BlockedUsers.LoadFromFile('users.txt');
    for i := 0 to BlockedUsers.Count-1 do
    begin
      if (Pos(BlockedUsers[i],aranan)>0) and (RadioButton2.Checked) then
      begin
        ShowMessage('No View');
        WebBrowser1.GoHome;
        ComboBox1.Text:='http://www.google.com';
        exit;
      end;
    end;
  finally
    BlockedUsers.Free;
  end;
end;




--------------------
    
PM MAIL ICQ Skype   Вверх
artsb
Дата 13.1.2010, 21:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2280
Регистрация: 17.7.2007
Где: центр Вселенной

Репутация: 1
Всего: 64



Цитата(muratboy31 @  13.1.2010,  21:31 Найти цитируемый пост)
if aranan.pos(BlockedUsers.IndexOf) then

must be like that:
Код

if aranan.pos('xxx') then
// or
if aranan.pos(Edit1.Text) then
// or
if aranan.pos(BlockedUsers.Strings[5]) then


From help:
Цитата

Returns the index at which a specified substring begins.

int __fastcall Pos(const AnsiString& subStr) const;

Description

Pos returns the index in the AnsiString at which the substring subStr begins, where 1 is the index of the first character, 2 is the index of the second character, and so on. If the substring is not contained in the AnsiString, Pos returns 0.



--------------------
Чем отличается умный человек от мудрого?
Умный - выпутается из любой ситуации.
Мудрый - просто в неё не попадёт.
PM MAIL   Вверх
muratboy31
Дата 13.1.2010, 22:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 7.1.2010

Репутация: нет
Всего: нет



ok this works but when i get the message for blocked site then message stay on the screen never closes !!!

Код

var
  aranan:AnsiString;
  BlockedUsers: TStringList;
  i: Integer;
begin
  aranan:=ComboBox1.Text;
  Form2.Text:=aranan;
  BlockedUsers := TStringList.Create;
  try
    BlockedUsers.LoadFromFile('users.txt');
    for i := 0 to BlockedUsers.Count-1 do
    begin
      if (Pos(BlockedUsers[i],aranan)>0) and (RadioButton2.Checked) then
      begin
        ShowMessage('No View');
        WebBrowser1.GoHome;
        ComboBox1.Text:='http://www.google.com';
        exit;
      end;
    end;
  finally
    BlockedUsers.Free;
  end;
end;


Это сообщение отредактировал(а) muratboy31 - 13.1.2010, 22:07
PM MAIL   Вверх
Демо
Дата 13.1.2010, 22:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1278
Регистрация: 3.11.2005

Репутация: 7
Всего: 50



You not check words in event DownloadBegin.



--------------------
    
PM MAIL ICQ Skype   Вверх
muratboy31
Дата 13.1.2010, 22:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 7.1.2010

Репутация: нет
Всего: нет



yes i check them on download begin but when i get the message for blocked site then message stay on the screen never closes !!!

user posted image

Код

procedure TForm2.WebBrowser1DownloadBegin(Sender: TObject);
var
  aranan:AnsiString;
  BlockedUsers: TStringList;
  i: Integer;
begin
  aranan:=ComboBox1.Text;
  Form2.Text:=aranan;
  BlockedUsers := TStringList.Create;
  try
    BlockedUsers.LoadFromFile('users.txt');
    for i := 0 to BlockedUsers.Count-1 do
    begin
      if (Pos(BlockedUsers[i],aranan)>0) and (RadioButton2.Checked) then
      begin
       ShowMessage('No View');
        WebBrowser1.GoHome;
        ComboBox1.Text:='http://www.google.com';
        exit;
      end;
    end;
  finally
    BlockedUsers.Free;
  end;
end;


Это сообщение отредактировал(а) muratboy31 - 13.1.2010, 22:20
PM MAIL   Вверх
artsb
Дата 13.1.2010, 22:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2280
Регистрация: 17.7.2007
Где: центр Вселенной

Репутация: 1
Всего: 64



Демо, я конечно не знаю как точно работает exit. ИМХО он просто выходит из функции. Тогда нужно перед exit поставить BlockedUsers.Free
Или выход происходит только из цикла?

Это сообщение отредактировал(а) artsb - 13.1.2010, 22:27


--------------------
Чем отличается умный человек от мудрого?
Умный - выпутается из любой ситуации.
Мудрый - просто в неё не попадёт.
PM MAIL   Вверх
Демо
Дата 13.1.2010, 22:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1278
Регистрация: 3.11.2005

Репутация: 7
Всего: 50



Цитата(artsb @  13.1.2010,  22:26 Найти цитируемый пост)
Тогда нужно перед exit поставить BlockedUsers.Free


block finally..end always executed...


--------------------
    
PM MAIL ICQ Skype   Вверх
artsb
Дата 13.1.2010, 22:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2280
Регистрация: 17.7.2007
Где: центр Вселенной

Репутация: 1
Всего: 64



Демо, я и по-русски понимаю smile 
Ясно. Я просто думал, что может она работает как return в C++

Это сообщение отредактировал(а) artsb - 13.1.2010, 22:41


--------------------
Чем отличается умный человек от мудрого?
Умный - выпутается из любой ситуации.
Мудрый - просто в неё не попадёт.
PM MAIL   Вверх
muratboy31
Дата 13.1.2010, 22:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 7.1.2010

Репутация: нет
Всего: нет



 smile     what do i have to do to stop this error ?

user posted image

Это сообщение отредактировал(а) muratboy31 - 13.1.2010, 22:48
PM MAIL   Вверх
artsb
Дата 13.1.2010, 22:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2280
Регистрация: 17.7.2007
Где: центр Вселенной

Репутация: 1
Всего: 64



maybe commenting this line:
Код

// ShowMessage('No View');



--------------------
Чем отличается умный человек от мудрого?
Умный - выпутается из любой ситуации.
Мудрый - просто в неё не попадёт.
PM MAIL   Вверх
muratboy31
Дата 13.1.2010, 22:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 7.1.2010

Репутация: нет
Всего: нет



no no i tried it but it doesnt help !!!
then it keeps loading the home site !!!
PM MAIL   Вверх
Демо
Дата 13.1.2010, 22:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1278
Регистрация: 3.11.2005

Репутация: 7
Всего: 50



muratboy31

too little source code...


--------------------
    
PM MAIL ICQ Skype   Вверх
muratboy31
Дата 13.1.2010, 23:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 7.1.2010

Репутация: нет
Всего: нет



here is the full code !!!

Код

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, OleCtrls, SHDocVw, StdCtrls, ExtCtrls, ComCtrls;

type
  TForm2 = class(TForm)
    ComboBox1: TComboBox;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Button4: TButton;
    RadioGroup1: TRadioGroup;
    WebBrowser1: TWebBrowser;
    RadioButton2: TRadioButton;
    RadioButton1: TRadioButton;
    stsbrStatus: TStatusBar;
    procedure FormCreate(Sender: TObject);
//    procedure RadioGroup1Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
    procedure WebBrowser1DownloadBegin(Sender: TObject);
    procedure ComboBox1KeyPress(Sender: TObject; var Key: Char);
    procedure ComboBox1Click(Sender: TObject);
    procedure WebBrowser1DownloadComplete(Sender: TObject);
    procedure WebBrowser1StatusTextChange(Sender: TObject; const Text: WideString);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form2: TForm2;

implementation

{$R *.dfm}

procedure TForm2.FormCreate(Sender: TObject);
begin
ComboBox1.Items.LoadFromFile('son.ini');
ComboBox1.ItemIndex:=0;
WebBrowser1.Navigate(ComboBox1.Text);
RadioButton1.Checked:=true;
WebBrowser1.Anchors:= [akLeft, akTop, akBottom, akRight];
end;



procedure TForm2.WebBrowser1DownloadComplete(Sender: TObject);
var
  URL : string;
begin
  URL := WebBrowser1.LocationURL;
  if not(ComboBox1.Text = URL) then ComboBox1.Text := URL;
end;

 procedure TForm2.WebBrowser1StatusTextChange(Sender: TObject; const Text: WideString);
begin
  stsbrStatus.Panels[1].Text := Text;
end; 


procedure TForm2.Button1Click(Sender: TObject);
begin
WebBrowser1.GoHome;
end;


procedure TForm2.Button2Click(Sender: TObject);
begin
try
WebBrowser1.GoBack;
ComboBox1.Text:=WebBrowser1.LocationURL;
except
Button2.Enabled:=false;
end;
end;


procedure TForm2.Button3Click(Sender: TObject);
begin
try
WebBrowser1.GoForward;
ComboBox1.Text:=WebBrowser1.LocationURL;
except
Button3.Enabled:=false;
end;
end;


procedure TForm2.Button4Click(Sender: TObject);
begin
WebBrowser1.GoSearch;
WebBrowser1.Navigate('www.microsoftsourch.com');
end;


procedure TForm2.WebBrowser1DownloadBegin(Sender: TObject);
var
  aranan:AnsiString;
  BlockedUsers: TStringList;
  i: Integer;
begin
  aranan:=ComboBox1.Text;
  Form2.Text:=aranan;
  BlockedUsers := TStringList.Create;
  try
    BlockedUsers.LoadFromFile('users.txt');
    for i := 0 to BlockedUsers.Count-1 do
    begin
      if (Pos(BlockedUsers[i],aranan)>0) and (RadioButton2.Checked) then
      begin
       ShowMessage('No View');
        WebBrowser1.GoHome;
        ComboBox1.Text:='http://www.google.com';
        exit;
      end;
    end;
  finally
    BlockedUsers.Free;
  end;
end;


procedure TForm2.ComboBox1KeyPress(Sender: TObject; var Key:
Char);
begin
if Key=#13 Then
begin
WebBrowser1.Navigate(ComboBox1.Text);
ComboBox1.Items.Add(ComboBox1.Text);
ComboBox1.Items.SaveToFile('son.ini');
end;
end;


procedure TForm2.ComboBox1Click(Sender: TObject);
begin
WebBrowser1.Navigate(ComboBox1.Text);
end;


end.


Это сообщение отредактировал(а) muratboy31 - 13.1.2010, 23:59
PM MAIL   Вверх
Демо
Дата 13.1.2010, 23:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1278
Регистрация: 3.11.2005

Репутация: 7
Всего: 50



move code check from procedure TForm2.WebBrowser1DownloadBegin to procedure TForm2.ComboBox1Click


--------------------
    
PM MAIL ICQ Skype   Вверх
muratboy31
Дата 13.1.2010, 23:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 7.1.2010

Репутация: нет
Всего: нет



@Демо
you are perfect  smile 
 smile  smile 

thanks alot alot alot
PM MAIL   Вверх
~FoX~
Дата 13.1.2010, 23:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


НЕ рыжий!!!
****


Профиль
Группа: Участник Клуба
Сообщений: 2819
Регистрация: 8.10.2003
Где: Зеленоград

Репутация: 5
Всего: 68



Event OnDownloadBegin ocurse before, you change text in ComboBox1... Try that:
Код

      if (Pos(BlockedUsers[i],aranan)<>-1) and (RadioButton2.Checked) then
      begin
        ComboBox1.Text:='http://www.google.com';
        ShowMessage('No View');
        WebBrowser1.GoHome;
        exit;
      end;

or
Код

      if (Pos(BlockedUsers[i],aranan)<>-1) and (RadioButton2.Checked) then
      begin
        ShowMessage('No View');
        WebBrowser1.Stop;
        ComboBox1.Text:='http://www.google.com';
        WebBrowser1.GoHome;
        exit;
      end;

And....pos Returns the index value of the first character in a specified substring that occurs in a given string... If you have string '123123' and try find '123', then pos return 0

Добавлено через 1 минуту и 54 секунды
Иееххх, долго же я на английском пишу  smile 


--------------------
user posted image
…множественность никогда не следует полагать без необходимости…
PM MAIL WWW ICQ Jabber   Вверх
muratboy31
Дата 14.1.2010, 00:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 7.1.2010

Репутация: нет
Всего: нет



1 more question; it works perfect with combobox onclick but why it doesnt work with combobox key press !!!  i also tried it with combobox key down but i get error if i press any key !!!

Код

procedure TForm1.IEAddress1KeyPress(Sender: TObject; var Key: Char);
  var
  aranan:AnsiString;
  BlockedUsers: TStringList;
  i: Integer;
  ini1 : TINIFile;
  Block : integer;
begin
if Key = #13 then begin
  ini1 := TINIFile.Create( ExtractFilePath(Application.ExeName)+'Ayar.INI ');
  Block:= ini1.Readinteger('Blocker','Block',0);
  aranan:=IEAddress1.Text;
  Form1.Text:=aranan;
  BlockedUsers := TStringList.Create;
  try
    BlockedUsers.LoadFromFile('users.txt');
    for i := 0 to BlockedUsers.Count-1 do
    begin
      if (Pos(BlockedUsers[i],aranan)>0) and (Block=1) then
      begin
       ShowMessage('No View');
        DesignTimeWB.GoHome;
       IEAddress1.Text:='http://www.google.com';
        exit;
      end;
     end;
      DesignTimeWB.Go(IEAddress1.Text);
  finally
    BlockedUsers.Free;
  end;
  end;
DesignTimeWB.SetFocus
end;


Это сообщение отредактировал(а) muratboy31 - 14.1.2010, 00:10
PM MAIL   Вверх
Данкинг
Дата 14.1.2010, 00:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 11
Всего: 130



Цитата(muratboy31 @  14.1.2010,  00:07 Найти цитируемый пост)
but i get error

What error? smile 


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
muratboy31
Дата 14.1.2010, 00:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 7.1.2010

Репутация: нет
Всего: нет



well actually i cant even type when i use the on keypress or keydown ebents...when  i am trying to type anything to the combobox, it jumps to webpage body after 1 letter !!!

see the picture i tried to type www... but it jumped to the edit box in the web page and didnt let me write to combobox !!!
user posted image

Это сообщение отредактировал(а) muratboy31 - 14.1.2010, 00:34
PM MAIL   Вверх
Данкинг
Дата 14.1.2010, 00:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 11
Всего: 130



 smile Here's an example of how KeyPress may be used:
Код

procedure TForm1.KeyPress(Sender: TObject; var Key: Char);
begin
 if key<>#13 then exit else showmessage('Hello');
end;

"showmessage" will arise only when you press <enter> in the ComboBox. smile 


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
muratboy31
Дата 14.1.2010, 00:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 7.1.2010

Репутация: нет
Всего: нет



but also other keys load the page, not only enter key !!!

Код

procedure TForm1.IEAddress1KeyPress(Sender: TObject; var Key: Char);
  var
  aranan:AnsiString;
  BlockedUsers: TStringList;
  i: Integer;
  ini1 : TINIFile;
  Block : integer;
begin
if key <> #13 then
  ini1 := TINIFile.Create( ExtractFilePath(Application.ExeName)+'Ayar.INI ');
  Block:= ini1.Readinteger('Blocker','Block',0);
  aranan:=IEAddress1.Text;
  Form1.Text:=aranan;
  BlockedUsers := TStringList.Create;
  try
    BlockedUsers.LoadFromFile('users.txt');
    for i := 0 to BlockedUsers.Count-1 do
    begin
      if (Pos(BlockedUsers[i],aranan)>0) and (Block=1) then
      begin
       ShowMessage('No View');
        DesignTimeWB.GoHome;
       IEAddress1.Text:='http://www.google.com';
        exit;
      end;
     end;
      DesignTimeWB.Go(IEAddress1.Text);
  finally
    BlockedUsers.Free;
  end;

DesignTimeWB.SetFocus

end;

PM MAIL   Вверх
Демо
Дата 14.1.2010, 01:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1278
Регистрация: 3.11.2005

Репутация: 7
Всего: 50



Цитата(muratboy31 @  14.1.2010,  00:42 Найти цитируемый пост)
if key <> #13 then


if key <> #13 then
begin
...
end;


--------------------
    
PM MAIL ICQ Skype   Вверх
muratboy31
Дата 14.1.2010, 01:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 7.1.2010

Репутация: нет
Всего: нет



no i also tried it but it is the same... any key loads the page !!!

Код

procedure TForm1.IEAddress1KeyPress(Sender: TObject; var Key: Char);
  var
  aranan:AnsiString;
  BlockedUsers: TStringList;
  i: Integer;
  ini1 : TINIFile;
  Block : integer;
begin
if key <> #13 then  begin
  ini1 := TINIFile.Create( ExtractFilePath(Application.ExeName)+'Ayar.INI ');
  Block:= ini1.Readinteger('Blocker','Block',0);
  aranan:=IEAddress1.Text;
  Form1.Text:=aranan;
  BlockedUsers := TStringList.Create;
  try
    BlockedUsers.LoadFromFile('users.txt');
    for i := 0 to BlockedUsers.Count-1 do
    begin
      if (Pos(BlockedUsers[i],aranan)>0) and (Block=1) then
      begin
       ShowMessage('No View');
        DesignTimeWB.GoHome;
       IEAddress1.Text:='http://www.google.com';
        exit;
      end;
     end;
      DesignTimeWB.Go(IEAddress1.Text);
      DesignTimeWB.SetFocus
  finally
    BlockedUsers.Free;
  end;

 end;
end;


Это сообщение отредактировал(а) muratboy31 - 14.1.2010, 01:06
PM MAIL   Вверх
Демо
Дата 14.1.2010, 01:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1278
Регистрация: 3.11.2005

Репутация: 7
Всего: 50



may be 
Код

f key=#13 then  begin


Это сообщение отредактировал(а) Демо - 14.1.2010, 01:16


--------------------
    
PM MAIL ICQ Skype   Вверх
muratboy31
Дата 14.1.2010, 01:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 7.1.2010

Репутация: нет
Всего: нет



yes i also tried it and if there is a link starting with 
Код

http://
 in combobox then it loads page as soon as i press 'w' !!!

Это сообщение отредактировал(а) muratboy31 - 14.1.2010, 01:19
PM MAIL   Вверх
muratboy31
Дата 14.1.2010, 10:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 7.1.2010

Репутация: нет
Всего: нет



i found the problem !!!
it is bug with combobox i am using... it was not combobox coming with delphi... smile 

thanks for all who helped me with it  smile 
PM MAIL   Вверх
Страницы: (3) [Все] 1 2 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Для новичков"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.1590 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.