Delphide Arama Yapabileceğim Algoritmayı Yapamıyorum

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
ekrem61
Üye
Mesajlar: 8
Kayıt: 07 May 2005 05:22

Delphide Arama Yapabileceğim Algoritmayı Yapamıyorum

Mesaj gönderen ekrem61 »

Öncelikle herkese iyi çalışmalar dilerim.
Ben Delphi ile programlamaya yeni başlamış birisiyim.Kendim amatör olarak bir adres takip programı yaptım fakat bu programda aratma yapamıyorum.Herhangi bir editbox içinde aratmayı nasıl yaparım bana bu konuda yardımcı olursanız sevinirim..
Şimdiden Herkese teşekkür ederim
Uğur1982
Üye
Mesajlar: 383
Kayıt: 11 Mar 2005 03:18
Konum: İzmir

Mesaj gönderen Uğur1982 »

merhaba

en basitinden Locate metodu ile yapabilirsin

Kod: Tümünü seç

var 
  Sonuc:Boolean;
begin
  Sonuc:=Locate('SeninAramaYapacaginField','Aranilacak kelime',loPartialKey) ;
  if Sonuc then
     ShowMessage('Kayit Bulundu')
  else
     ShowMessage('Kayit Bulunamadi');
en güzeli ise SQL ile yapman + hizlidir

Kod: Tümünü seç


  with Query1 do
  begin
    Close;
    SQL.Clear;
    SQL.Add('Select * from SeninTablon where  SeninAlan='''+Edit1.Text+'''');
    Prepare;
    Open;
  end;
burada edit1 e girdiin deger araniyor var ise listelenir

iyi aksamlar...... :roll:
Kullanıcı avatarı
ekrem61
Üye
Mesajlar: 8
Kayıt: 07 May 2005 05:22

Teşekkür

Mesaj gönderen ekrem61 »

Arkadaşım çok teşekkür ederim.
Kullanıcı avatarı
ekrem61
Üye
Mesajlar: 8
Kayıt: 07 May 2005 05:22

sorunum devam ediyor

Mesaj gönderen ekrem61 »

Arkadaşım Bu locate komutunu bulamıyorum.
Uğur1982
Üye
Mesajlar: 383
Kayıt: 11 Mar 2005 03:18
Konum: İzmir

Mesaj gönderen Uğur1982 »

nasil anlamadim :roll: +nerde bulamiyorsun
Kullanıcı avatarı
ekrem61
Üye
Mesajlar: 8
Kayıt: 07 May 2005 05:22

Yok

Mesaj gönderen ekrem61 »

Uğur önce formuma bir buton koyup arama diye captionu belirliyorum.Söylediklerini yapmaya gelince locate komutu karşıma çıkmıyor :roll:
Elif Okuduk ötürü
Pazar eyledik götürü
Yaradılanı Hoş Gör
Yaradan dan ötürü
Kullanıcı avatarı
ekrem61
Üye
Mesajlar: 8
Kayıt: 07 May 2005 05:22

Program Bu

Mesaj gönderen ekrem61 »

unit adres;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ActnList;

type
TForm1 = class(TForm)
Label1: TLabel;
Label3: TLabel;
Label2: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
sicil: TEdit;
ad: TEdit;
tel: TEdit;
adres: TEdit;
ilce: TEdit;
il: TEdit;
ListBox1: TListBox;
Button1: TButton;
Button2: TButton;
Button4: TButton;
Button5: TButton;
Label7: TLabel;
Button6: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure sicilChange(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
if (sicil.Text<>'') and (ad.text<>'') then
ListBox1.Items.Add(sicil.Text+' '+ad.Text+' '+tel.Text+' '+adres.Text+' '+ilce.Text+' '+il.Text)
else
Application.MessageBox('Bilginizde Eksiklik Var','Hata',0);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
ListBox1.Items.SaveToFile('d:\Ekrem.Karci\Delphi Çalışmaları\Adres Takip\adres.xls');
end;

procedure TForm1.Button4Click(Sender: TObject);
begin
sicil.Text:='';
ad.Text:='';
tel.Text:='';
adres.Text:='';
ilce.Text:='';
il.Text:='';
end;

procedure TForm1.Button6Click(Sender: TObject);
begin
ListBox1.Items.Delete(ListBox1.ItemIndex);
end;

procedure TForm1.Button5Click(Sender: TObject);
begin
close;
end;



procedure TForm1.FormCreate(Sender: TObject);
begin
ListBox1.Items.LoadFromFile('d:\Ekrem.Karci\Delphi Çalışmaları\Adres Takip\adres.xls');
end;



procedure TForm1.sicilChange(Sender: TObject);
var
sonuc:Boolean;
begin
sonuc:=
end;

end.



Bir bakarsan Sevinirim
Elif Okuduk ötürü
Pazar eyledik götürü
Yaradılanı Hoş Gör
Yaradan dan ötürü
Uğur1982
Üye
Mesajlar: 383
Kayıt: 11 Mar 2005 03:18
Konum: İzmir

Mesaj gönderen Uğur1982 »

merhaba;

bu dediim kodlari bir butonun clik ine vs. yazacaksin yani
Code insight a yazacaksin

Kod: Tümünü seç

locate komutu karşıma çıkmıyor 
bunu sen yazacaksin.praogramcilik buna denir :)
Kullanıcı avatarı
ekrem61
Üye
Mesajlar: 8
Kayıt: 07 May 2005 05:22

olmuyor

Mesaj gönderen ekrem61 »

Denedim Arkadaşım ama gene olmuyor.Aynı Şekilde Satır satır yazdım.

Ama :oops: :oops: hüngür yani anlayacağın.
Elif Okuduk ötürü
Pazar eyledik götürü
Yaradılanı Hoş Gör
Yaradan dan ötürü
Uğur1982
Üye
Mesajlar: 383
Kayıt: 11 Mar 2005 03:18
Konum: İzmir

Mesaj gönderen Uğur1982 »

merhaba;

en yukarida :ara Arama bu butonla istedin sorunu çözebilirsin
anlamini bilmediin kelimeyi söyle yap
mesala locate :ara bunun gibi .

takildiin yer olursa herkes yardimci olur

iyi aksamlar.
Kullanıcı avatarı
vedatkaba
Kıdemli Üye
Mesajlar: 866
Kayıt: 06 Oca 2004 06:50
Konum: DARICA/GEBZE

Mesaj gönderen vedatkaba »

Kod: Tümünü seç

locate
yi kullanamaman normal gördüğüm kadarıyla veritabanı ile çalışmıyorsun..bu komut veritabananı programcılığı ile ilgili komut query veya table kullansan komutu görürsün ama sen listbox içinde arama yapmak istiyorsun onun için döngü açman lazım..

Kod: Tümünü seç

for i:=0 to listbox1.items.count-1 do
diye döngü aç

Kod: Tümünü seç

if listbox1.items.strings[i]=edit1.text then
burda edit içinde yazılanı listbox içinde arar kolay gelsin
***********************************
Kamil odur ki; koya dünyada bir eser,
Eseri olmayanın, yerinde yeller eser.

***********************************
Cevapla