Edit hane sayısı sorunu

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
trpasport
Üye
Mesajlar: 27
Kayıt: 03 Eki 2007 05:53

olmuyor query çıldırtacak bu kodlar beni

Mesaj gönderen trpasport »

sıkıntılarım çoğu bitti,kodlar konusunda en çok bana yardımı olan ercan kardeşime çok teşekkür ediyorum zaten kodları yazanda oydu benim pek fonksiyonum olmadı ama sağolsun büyük yükü aldı burdan herkese teşekkür ediyorum yardımlarından dolayı query ve ikutlauay kardeşlerimide unutmadım sağolun varolun.

unit Unit1;

interface

uses
Windows, Messages,SysUtils,Forms,WAVEEXCONTROLLib_TLB,xpman, TONEDECODERLib_TLB, SPECTRUMVIEWLib_TLB,
Menus, Buttons, ComCtrls, OleCtrls, ExtCtrls,dialogs, StdCtrls, Controls, Classes;

type TDecodeState=(DS_None,DS_DTMF, DS_ToneSigal );
type
TForm2 = class(TForm)
Panel1: TPanel;
CbDevices: TComboBox;
Memo1: TMemo;
Label2: TLabel;
GroupBox1: TGroupBox;
BnStart: TButton;
BnStop: TButton;
WaveExCtrl1: TWaveExCtrl;
PhoneToneDecoder1: TPhoneToneDecoder;
GBOptions: TGroupBox;
GroupBox2: TGroupBox;
WaveView1: TSpectrumView;
GroupBox3: TGroupBox;
SpectrumView1: TSpectrumView;
CBChannel: TComboBox;
VolumeIndicator: TSpectrumView;
CheckBox1: TCheckBox;
CheckBox3: TCheckBox;
CheckBox5: TCheckBox;
CheckBox6: TCheckBox;
CheckBox4: TCheckBox;
CheckBox2: TCheckBox;
CBMode: TComboBox;
GroupBox4: TGroupBox;
Label3: TLabel;
Edit1: TEdit;
Label4: TLabel;
Edit2: TEdit;
Edit3: TEdit;
Label5: TLabel;
bslt: TTimer;
Edit4: TEdit;
Label6: TLabel;
sess: TTimer;
GroupBox5: TGroupBox;
lst: TListView;

procedure FormCreate(Sender: TObject);
procedure WaveExCtrl1Debug(Sender: TObject; const Message: WideString;
lRefCode: Integer);
procedure BnStartClick(Sender: TObject);
procedure BnStopClick(Sender: TObject);
procedure CbDevicesChange(Sender: TObject);
procedure PhoneToneDecoder1Debug(Sender: TObject;
const sMsg: WideString; RefCode: Integer);
procedure PhoneToneDecoder1CallerID(ASender: TObject; const Name,
CallerNumber, CalledNumber, DateTime: WideString; Position: Integer);
procedure PhoneToneDecoder1DTMF(ASender: TObject; Key,
Position: Integer);
procedure bsltTimer(Sender: TObject);
function arases:boolean;
function arases1:boolean;
procedure sessTimer(Sender: TObject);
procedure Edit2Change(Sender: TObject);
procedure lstDblClick(Sender: TObject);
procedure Edit3KeyPress(Sender: TObject; var Key: Char);
procedure Edit3Change(Sender: TObject);
procedure Edit3Click(Sender: TObject);


private
SessionEnding: Boolean;
procedure WMQueryEndSession(var Message: TMessage); message WM_QUERYENDSESSION;


public
{ Public declarations }
end;

var
Form2: TForm2;
a:string='';
i:integer=0;
li:tlistitem;
seskaydet:string='';
aranan:string='';
aranan1:integer=0;
implementation



{$R *.DFM}

uses unit3;

procedure TForm2.FormCreate(Sender: TObject);
var i:integer;
begin
CBChannel.ItemIndex:=0;

CbDevices.Items.add('[WAVE_MAPPER]');
for i:=0 to WaveExCtrl1.WaveInNumDevs-1 do begin
CbDevices.Items.Add(WaveExCtrl1.WaveInGetDeviceName(i));
CbDevices.Items.Add('(Line) '+WaveExCtrl1.WaveInGetDeviceName(i));
CbDevices.Items.Add('(Out) '+WaveExCtrl1.WaveOutGetDeviceName(i));
end;

if WaveExCtrl1.WaveInNumDevs>0 then
begin
CbDevices.ItemIndex:=1;
CbDevicesChange(sender);
end;

WaveExCtrl1.RecordBufferLength:=4096;
CbMode.ItemIndex :=0;

// associate the Viewer with the WaveEx
WaveView1.Source:=WaveExCtrl1.DefaultInterface;
SpectrumView1.Source := WaveExCtrl1.DefaultInterface; // associate the Viewer with the WaveEx
VolumeIndicator.Source:=WaveExCtrl1.DefaultInterface;

PhoneToneDecoder1.Source :=(WaveExCtrl1.DefaultInterface as IUnknown); // associate the PhoneDecoder with the WaveEx
bnstart.Click;
end;


procedure TForm2.WaveExCtrl1Debug(Sender: TObject;
const Message: WideString; lRefCode: Integer);
begin
memo1.Lines.add(Message);
end;

procedure TForm2.BnStartClick(Sender: TObject);
begin
//a:=inputbox('Ses Kaydı','Ses Kaydı Tutulsun mu?','');
with PhoneToneDecoder1 do
begin
MonitorDTMF:=CheckBox1.checked;
MonitorCallerID:=CheckBox2.checked;
MonitorCustomTone :=CheckBox3.checked;
MonitorTTY:=CheckBox4.checked;
MonitorMF:=Checkbox5.Checked;
MonitorSAME:=checkbox6.Checked;
TTYParams.Mode :=CBMode.ItemIndex;
end;

Case CBChannel.ItemIndex of
0: // mono, select the mono format
WaveExCtrl1.RecordFormat.FormatIndex := WF_PCM_8kHz16BitStereo;
1,2: // left(right) channel, select the stereo format
WaveExCtrl1.RecordFormat.FormatIndex:= WF_PCM_8kHz16BitMono; end;

// if a='' then BnStop.Enabled := WaveExCtrl1.Record_('') else
BnStop.Enabled := WaveExCtrl1.Record_(a);
BnStart.Enabled :=not BnStop.Enabled;
GBOptions.Enabled :=BnStart.Enabled;
CBMode.Enabled :=false;

end;

procedure TForm2.BnStopClick(Sender: TObject);
begin
WaveExCtrl1.RecordStop;
BnStop.Enabled :=false;
BnStart.Enabled :=not BnStop.Enabled;
GBOptions.Enabled :=BnStart.Enabled;
CBMode.Enabled :=True;
end;

procedure TForm2.CbDevicesChange(Sender: TObject);
begin
WaveExCtrl1.waveinDevice:= CbDevices.Text ;
end;

procedure TForm2.PhoneToneDecoder1Debug(Sender: TObject;
const sMsg: WideString; RefCode: Integer);
begin
memo1.Text:= 'PTD: '+sMsg + #13#10+ memo1.Text;
end;

procedure TForm2.PhoneToneDecoder1CallerID(ASender: TObject; const Name,
CallerNumber, CalledNumber, DateTime: WideString; Position: Integer);
begin
edit4.Text:=name;
edit1.Text:=CallerNumber;
edit2.Text:=DateTime;
//edit3.Text:=CalledNumber;
end;

procedure TForm2.PhoneToneDecoder1DTMF(ASender: TObject; Key,
Position: Integer);
var
a:string;
begin
case key of
48:a:=inttostr(0);
49:a:=inttostr(1);
50:a:=inttostr(2);
51:a:=inttostr(3);
52:a:=inttostr(4);
53:a:=inttostr(5);
54:a:=inttostr(6);
55:a:=inttostr(7);
56:a:=inttostr(8);
57:a:=inttostr(9);
end;
edit3.Text:=edit3.Text+a;
edit2.Text:=aranan;
end;

procedure TForm2.bsltTimer(Sender: TObject);
begin
bslt.Enabled:=false;
checkbox3.Checked:=true;
if edit1.Text='' then begin
a:='numarayok.wav';
end else begin
a:=edit1.Text+'.wav';
end;
bnstop.Click;
sleep(1500);
bnstart.Click;
//bslt.Enabled:=false;
sess.Enabled:=true;
end;

function TForm2.arases: boolean;
var
b,yer,adet:integer;
s,f:string;
begin
yer:=0;
adet:=0;
f:='End of silence detected, ';
s:=copy(memo1.Text,yer+1,length(memo1.Text)-yer+1);
b:=pos(f,s);
yer:=yer+b;
if b=0 then begin
if adet=0 then else
adet:=0;
yer:=0;
result:=false;
end else begin
result:=true;
end; adet:=adet+1;
end;

function TForm2.arases1: boolean;
var
b,yer,adet:integer;
s,f:string;
begin
yer:=0;
adet:=0;
f:='Frequency detected, ';
s:=copy(memo1.Text,yer+1,length(memo1.Text)-yer+1);
b:=pos(f,s);
yer:=yer+b;
if b=0 then begin
if adet=0 then else
adet:=0;
yer:=0;
result:=false;
end else begin
result:=true;
end; adet:=adet+1;
end;

procedure TForm2.sessTimer(Sender: TObject);
begin
if arases and arases1 then begin
memo1.Clear;
end else begin
checkbox3.Checked:=false;
bnstop.Click;
sleep(500);
edit1.Clear;
edit2.Clear;
edit3.Text:='';
edit4.Clear;
a:='';
sleep(500);
bnstart.Click;
sess.Enabled:=false;
end;
end;

procedure TForm2.Edit2Change(Sender: TObject);
begin
if edit2.Text='' then begin exit;
end else begin
Li := form2.Lst.Items.Add;
Li.Caption := edit1.Text;
Li.Caption := edit3.Text;
Li.SubItems.Add(edit2.Text);
li.SubItems.Add(edit4.Text);
sleep(500);
bslt.Enabled:=true;
end;
end;

procedure TForm2.lstDblClick(Sender: TObject);
begin
if Lst.Selected=nil then exit;
form3.Showmodal;
end;

procedure TForm2.WMQueryEndSession(var Message: TMessage);
begin
SessionEnding := True;
end;




procedure TForm2.Edit3KeyPress(Sender: TObject; var Key: Char);
begin
if edit3.Text[1]=inttostr(0) then
edit3.MaxLength:=11 else edit3.MaxLength:=7;
end;

procedure TForm2.Edit3Change(Sender: TObject);
begin
id edit3.text='' then exit;
if(Edit3.Text[1]=IntToStr(0)) and (Length(Edit3.Text)=11) then begin

end;
if not (Edit3.Text[1]=IntToStr(0)) and (Length(Edit3.Text)=7) then begin
end;
end;



procedure TForm2.Edit3Click(Sender: TObject);
begin
Edit2.Text:=DateTimeToStr(now);
end;

end.
Cevapla