Kodlar aşağıda verilmiştir.
// Kullanıcıların belirttiği bir dosyayı oluşturabilen, dosyadan içerik okuyabilen
ve dosyayı güncelleyebilen bir uygulama
// panel1 --
caption label
// panel2 --
createFileNameLbl, createFileNameEdt
// panel3 --
TclMemo
// panel4 --
Buttons(Dosyayı oluştur, Dosyayı göster, Dosyayı güncelle)
var
MyForm:TCLForm;
captionLbl,createFileNameLbl:TCLProLabel;
panel1,panel2,panel3,panel4:TCLProPanel;
createFileNameEdt:TclProEdit;
clMemo:TCLMemo;
createFileBtn,showFileBtn,updateFileBtn:TCLProButton;
myFile:TextFile;
createTextStr,crCtTxtMemoStr:String;
// Dosya oluşturma fonksiyonu
void createFile;
{
try
// createFileNameEdt'den gelen değer dosya
adı olarak kaydedilecek
createTextStr=createFileNameEdt.Text;
AssignFile(myFile,createTextStr);
ReWrite(myFile);
ShowMessage('Dosya, exe dosyasının
bulunduğu dizine eklendi..');
// TCLMemo içerisinde yazan metni verilen
dosya adının içerisine kaydet
crCtTxtMemoStr=clMemo.Text;
WriteLn(myFile, crCtTxtMemoStr);
// Dosyayı kapat
CloseFile(myFile);
except
ShowMessage('Lütfen önce dosya adı
giriniz');
}
}
// Dosya okuma fonksiyonu
void showFile;
var
showFileContentStr:String;
{
try
// Dosyadan okunan içerik TCLMemo
içerisinde gösterilir
// okumak için dosyayı yeniden aç
Reset(myFile);
// Dosya içeriğini görüntüle
while (not Eof(myFile))
{
// Dosya içeriğini TCLMemo'da görüntüle
showFileContentStr=ReadLn(myFile);
clMemo.Text=showFileContentStr;
}
// Dosyayı kapat
CloseFile(myFile);
except
ShowMessage('Lütfen bir dosya
oluşturunuz');
}
}
// Dosya güncelleme fonksiyonu
void updateFile;
{
try
//Append(myFile);
ReWrite(myFile);
crCtTxtMemoStr=clMemo.Text;
WriteLn(myFile, crCtTxtMemoStr);
// Dosyayı kapat
CloseFile(myFile);
ShowMessage('Dosya içeriği güncellendi');
except
ShowMessage('Lütfen bir dosya
oluşturunuz');
}
}
// ***************************************
Main ***********************************************
{
MyForm=TCLForm.Create(Self);
// ****************** panel1
***************************
panel1=MyForm.AddNewProPanel(MyForm,'panel1');
clComponent.SetupComponent(panel1,'{
"MarginBottom":10,
"MarginLeft":10,
"MarginRight":10,
"Align":"MostTop",
"Height":60,
"Width":500,
"RoundHeight":10,
"RoundWidth":10,
"BorderColor":"#652020",
"BorderWidth":2
}');
captionLbl=MyForm.AddNewProLabel(panel1,
'captionLbl', 'Dosya Uygulaması');
clComponent.SetupComponent(captionLbl,'{
"Align":"Center",
"MarginTop":20,
"Height":70,
"Width":170,
"TextSize":20,
"TextBold":"True"
}');
// ******************* panel2
***************************
panel2=MyForm.AddNewProPanel(MyForm,'panel2');
clComponent.SetupComponent(panel2,'{
"MarginBottom":10,
"MarginLeft":10,
"MarginRight":10,
"Align":"MostTop",
"Height":50,
"Width":700,
"RoundHeight":10,
"RoundWidth":10,
"BorderColor":"#652020",
"BorderWidth":2
}');
createFileNameLbl=MyForm.AddNewProLabel(panel2, 'createFileNameLbl',
'Dosya adı giriniz: ');
clComponent.SetupComponent(createFileNameLbl,'{
"MarginLeft":10,
"TextSize":15,
"Align":"Center"
}');
createFileNameLbl.Width=panel2.Width/2;
createFileNameLbl.Height=panel2.Height/2;
createFileNameEdt=MyForm.AddNewProEdit(panel2,'createFileNameEdt',
'MyFile.txt');
clComponent.SetupComponent(createFileNameEdt,'{
"BorderColor":"#652020",
"BorderWidth":2
}')
createFileNameEdt.Margins.Left=panel2.Width/2;
createFileNameEdt.Margins.Right=panel2.Width/2-150;
//**************************** panel3
******************************
// TCLMemo
panel3=MyForm.AddNewProPanel(MyForm,'panel3');
clComponent.SetupComponent(panel3,'{
"MarginTop":10,
"MarginBottom":10,
"MarginLeft":10,
"MarginRight":10,
"Align":"MostTop",
"Height":250,
"Width":690,
"RoundHeight":10,
"RoundWidth":10,
"BorderColor":"#652020",
"BorderWidth":2
}');
clMemo=MyForm.AddNewMemo(panel3,'clMemo',
'');
//clMemo.Align=alCenter;
clMemo.Width=panel3.Width*9/10;
clMemo.Align=alCenter;
clMemo.Height=240;
clMemo.TextSettings.WordWrap = True;
//************************** panel4
****************************
panel4=MyForm.AddNewProPanel(MyForm,'panel4');
clComponent.SetupComponent(panel4,'{
"MarginBottom":10,
"MarginLeft":10,
"MarginRight":10,
"Align":"MostBottom",
"Height":50,
"Width":700,
"RoundHeight":10,
"RoundWidth":10,
"BorderColor":"#652020",
"BorderWidth":2
}');
createFileBtn=MyForm.AddNewProButton(panel4, 'createFileBtn', 'Dosya
oluştur');
clComponent.SetupComponent(createFileBtn,'{
"BorderColor":"#652020",
"RoundHeight":10,
"RoundWidth":10,
"BorderWidth":2,
"Width":120
}');
//createFileBtn.Width=panel4.Width/3;
createFileBtn.Margins.Right=panel2.Width/3+115;
MyForm.AddNewEvent(createFileBtn,tbeOnClick,'createFile');
showFileBtn=MyForm.AddNewProButton(panel4,
'showFileBtn', 'Dosyayı görüntüle');
clComponent.SetupComponent(showFileBtn,'{
"BorderColor":"#652020",
"RoundHeight":10,
"RoundWidth":10,
"BorderWidth":2,
"Width":120
}');
//showFileBtn.Width=panel4.Width/3;
MyForm.AddNewEvent(showFileBtn,tbeOnClick,'showFile');
updateFileBtn=MyForm.AddNewProButton(panel4,'updateFileBtn','Dosyayı
güncelle');
clComponent.SetupComponent(updateFileBtn,'{
"BorderColor":"#652020",
"RoundHeight":10,
"RoundWidth":10,
"BorderWidth":2,
"Width":120
}');
MyForm.AddNewEvent(updateFileBtn,tbeOnClick,'updateFile');
//updateFileBtn.Width=panel4.Width/3;
updateFileBtn.Margins.Left=panel2.Width/3+115;
MyForm.Run;
}