Personel programı--İşe Yarayacagından Eminim

Delphi Pascal bölümünde yer alan bu konu SüKuN tarafından paylaşıldı.

  1. SüKuN

    SüKuN Harbi Aktif Üye

    Girilen personel bilgilerini listbox'lara atayan ve gerektiginde Silme, yer degişimi, arama ve kayıt degişikligi gibi
    uygulamaları olan ve girilen bilgileri form kapatıldıgında kaydedip bir sonraki çalıştıgında kayıtları gösteren bir program. İşe yarayacagına eminim.

    Özellikle Ögrenci arkadaşlarımızın işine yarayacaktır.yeni başlayanlar içinde faydalı. Örnegimiz için 3 edit, 8 label, 6 button, 3 listbox ekleyin.

    Label'ların 4'ünün cation özelligine sırası ile "Personelin,ADI SOYADI,MESLEGİ,ÇALIŞTIGI BİRİM" degerlerini verelim.büyük yazmış oldugum label 2,3ve4 'ün karşısına edit 1,2 ve 3'ü getirelim. Label 5'in caption özelligine 'Personel sayısı' degerini girelim. Karşısına label6'yı getirelim burada kayıt sayısı görülecek.label7 nin caption özelligine "sıra no" degerini verelim ve karşısına label8'i getirelim.burada ise seçili kaydın sıra numarası görülecek.buttonları ekleyip sırasıyla caption özelligine şu degerleri verelim: 1.ye "ekle", 2.ye "sil", 3.ye "bul", 4.ye "degiştir", 5.ye "taşı", 6.ya ise "araya ekle" degerlerini verelim.

    Diger elemanlarıda ekledikten sonra aşagıdaki kodları yazınız. Umarım kolay anlatmışımdır zorlanmazsınız inşallah.

    unit Unit1;

    interface

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

    type
    TForm1 = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    Label10: TLabel;
    Label11: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Button4: TButton;
    Button5: TButton;
    Button6: TButton;
    ListBox1: TListBox;
    ListBox2: TListBox;
    ListBox3: TListBox;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
    procedure Button5Click(Sender: TObject);
    procedure Button6Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure ListBox1Click(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    private
    { Private declarations }
    public
    { Public declarations }
    end;

    var
    Form1: TForm1;

    implementation

    {$R *.dfm}

    procedure TForm1.Button1Click(Sender: TObject);
    begin {bilgilerin listelere eklenmesi}
    if Listbox1.Items.IndexOf (edit1.Text)>-1 then
    showMessage(edit1.Text+' adlı personel zaten var')
    else
    begin
    listbox1.Items.Add(edit1.Text);
    listbox2.Items.Add(edit2.Text);
    listbox3.Items.Add(edit3.Text);
    label6.Caption:=InTtoStr(Listbox1.Items.Count);
    Listbox1.ItemIndex:=listbox1.Items.Count-1;
    end;
    end;

    procedure TForm1.Button2Click(Sender: TObject);
    var {seçili elemanın silinmesi}
    c,Ind:integer;
    begin
    Ind:=listbox1.ItemIndex;
    if Ind<0 then
    showMessage('silinecek personeli listeden seçin')
    else
    begin
    c:=ApplicaTion.MessageBox('seçili personel silinsin mi?','Personel Silme',Mb_YesNo+ Mb_IconQuesTion);
    if c=IDYes then
    begin
    listbox1.Items.Delete(Ind);
    listbox2.Items.Delete(Ind);
    listbox3.Items.Delete(Ind);
    label6.Caption:=IntTostr(listbox1.Items.Count);
    end;
    end;
    end;

    procedure TForm1.Button3Click(Sender: TObject);
    var {listedeki bir elemanı bulunması}
    Ind:integer;
    begin
    Ind:=listbox1.Items.IndexOf(edit1.Text);
    if Ind<0 then
    showMessage(edit1.Text+ ' isimli personel bulunamadı')
    else
    ListBox1.ItemIndex:=Ind;
    end;

    procedure TForm1.Button4Click(Sender: TObject);
    var {seçili elemanın silinmesi}
    Ind:integer;
    begin
    Ind:=Listbox1.ItemIndex;
    if Ind<0 then
    showMessage ('degiştirilecel elemanı listeden seçiniz')
    else
    begin
    listbox1.Items[Ind]:=Edit1.Text;
    listbox2.Items[Ind]:=Edit2.Text;
    listbox3.Items[Ind]:=Edit3.Text;
    end;
    end;

    procedure TForm1.Button5Click(Sender: TObject);
    var {elemanın taşınması}
    ind,yeniInd:integer;
    begin
    ind:=listbox1.ItemIndex;
    if ind<0 then
    showMessage('önce taşınacak personeli listeden seçiniz')
    else
    begin
    yeniInd:= StrToInt(Inputbox('Yer değişme','seçili personel listede kaçıncı sıraya gelsin','1'));
    YeniInd:=yeniInd-1;
    if (YeniInd<0) or (yeniInd>listbox1.Items.Count) then
    showmessage('Geçersizbi sıra numarası girdinz')
    else
    listbox1.Items.Move(ind,YeniInd);
    end;
    end;
    procedure TForm1.Button6Click(Sender: TObject);
    var {araya eleman ekleme}
    Ind:integer;
    begin
    Ind:=listbox1.ItemIndex;
    if Ind<0 then
    showmessage('Önce nerye ekleyeceginizi listeden seçiniz')
    else
    if listbox1.Items.IndexOf(Edit1.Text)>1 then
    showMessage(edit1.Text+' adlı personel zaten var')
    Else
    begin
    listbox1.Items.Insert(Ind,Edit1.Text);
    listbox2.Items.Insert(Ind,Edit2.Text);
    listbox3.Items.Insert(Ind,Edit3.Text);
    listbox1.ItemIndex:=listbox1.Items.Count-1;
    end;
    end;

    procedure TForm1.FormCreate(Sender: TObject);
    begin {form yüklendigindedosya içeriklerinin listelere yüklenmesi }
    if FileExists('PerAd.dat') then
    begin
    listbox1.Items.LoadFromFile('PerAd.dat');
    listbox2.Items.LoadFromFile('PerMes.dat');
    listbox3.Items.LoadFromFile('PerBirim.dat');
    end;
    end;
    procedure TForm1.ListBox1Click(Sender: TObject);
    var {listelerden birinde bir eleman seçildiginde digerlerininde seçilmesini saylar}
    Ind,Tind:integer;
    begin
    Ind:=TListbox(sender).ItemIndex;
    Tind:=Tlistbox(sender).TopIndex;
    listbox1.ItemIndex:=Ind;
    listbox2.ItemIndex:=Ind;
    listbox3.ItemIndex:=Ind;
    listbox1.TopIndex:=Tind;
    listbox2.TopIndex:=Tind;
    listbox3.TopIndex:=Tind;
    label8.Caption:=IntTostr(Ind+1);
    edit1.Text:=Listbox1.Items[Ind];
    Edit2.Text:=Listbox1.Items[Ind];
    Edit3.Text:=Listbox1.Items[Ind];
    end;
    procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
    begin {form kapatıldıgında bilgileri kayıt eder}
    listbox1.Items.SaveToFile('PerAd.Dat');
    listbox2.Items.SaveToFile('PerMes.Dat');
    listbox3.Items.SaveToFile('PerBirim.Dat');
    end;
    end.