var
UnitForm: TclForm;
MainScrollBox: TclVertScrollBox;
SectionPnl2, VarMenuPnl: TclProPanel;
VarMainBtn: TclProButton;
BtnVarA, BtnVarB, BtnVarC, BtnVarD, BtnVarE: TclProButton;
ImageForm: TclForm;
ImgDisplay: TclImage;
BtnCloseImg: TclProButton;
QuizForm: TclForm;
QuizScrollBox: TclVertScrollBox;
// Soru Etiketleri (9-18 arası)
Soru9Lbl, Soru10Lbl, Soru11Lbl, Soru12Lbl, Soru13Lbl, Soru14Lbl, Soru15Lbl, Soru16Lbl, Soru17Lbl, Soru18Lbl: TclLabel;
// Seçenek Butonları
S9A, S9B, S9C, S9D: TclProButton;
S10A, S10B, S10C, S10D: TclProButton;
S11A, S11B, S11C, S11D: TclProButton;
S12A, S12B, S12C, S12D: TclProButton;
S13A, S13B, S13C, S13D: TclProButton;
S14A, S14B, S14C, S14D: TclProButton;
S15A, S15B, S15C, S15D: TclProButton;
S16A, S16B, S16C, S16D: TclProButton;
S17A, S17B, S17C, S17D: TclProButton;
S18A, S18B, S18C, S18D: TclProButton;
// Açıklama Etiketleri
Aciklama9, Aciklama10, Aciklama11, Aciklama12, Aciklama13, Aciklama14, Aciklama15, Aciklama16, Aciklama17, Aciklama18: TclLabel;
void CloseImageForm;
{
ImageForm.Free;
}
// --- SORU KONTROLLERİ (9 - 18) ---
void Soru9Kontrol; var btn:TclProButton; {
btn = TclProButton(QuizForm.clSender);
if(btn.Text == 'B) var kelimesi kullanılır; sistem atanan ilk değere göre türü otomatik belirler.') {
btn.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#22c55e'); btn.SetclProSettings(btn.clProSettings); Aciklama9.Text = 'Doğru!';
} else { Aciklama9.Text = 'Yanlış. Clomosy dinamik tür belirleme (Type Inference) kullanır.'; }
}
void Soru10Kontrol; var btn:TclProButton; {
btn = TclProButton(QuizForm.clSender);
if(btn.Text == 'C) var Sayı_1;') {
btn.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#22c55e'); btn.SetclProSettings(btn.clProSettings); Aciklama10.Text = 'Doğru! Değişkenler sayı ile başlayamaz.';
} else { Aciklama10.Text = 'Yanlış. Sayı ile başlanamaz ve boşluk içeremez.'; }
}
void Soru11Kontrol; var btn:TclProButton; {
btn = TclProButton(QuizForm.clSender);
if(btn.Text == 'C) Float & Double') {
btn.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#22c55e'); btn.SetclProSettings(btn.clProSettings); Aciklama11.Text = 'Doğru! Küsuratlı sayılar için kullanılır.';
} else { Aciklama11.Text = 'Yanlış. Küsuratlılar Float/Double''dır.'; }
}
void Soru12Kontrol; var btn:TclProButton; {
btn = TclProButton(QuizForm.clSender);
if(btn.Text == 'C) StrToInt') {
btn.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#22c55e'); btn.SetclProSettings(btn.clProSettings); Aciklama12.Text = 'Doğru!';
} else { Aciklama12.Text = 'Yanlış. String to Integer (StrToInt) kullanılır.'; }
}
void Soru13Kontrol; var btn:TclProButton; {
btn = TclProButton(QuizForm.clSender);
if(btn.Text == 'B) Boyum 180') {
btn.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#22c55e'); btn.SetclProSettings(btn.clProSettings); Aciklama13.Text = 'Doğru!';
} else { Aciklama13.Text = 'Yanlış. Metin ve sayı dönüştürülüp birleştirilir.'; }
}
void Soru14Kontrol; var btn:TclProButton; {
btn = TclProButton(QuizForm.clSender);
if(btn.Text == 'A) Boolean') {
btn.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#22c55e'); btn.SetclProSettings(btn.clProSettings); Aciklama14.Text = 'Doğru!';
} else { Aciklama14.Text = 'Yanlış. True/False yönetimi Boolean''dır.'; }
}
void Soru15Kontrol; var btn:TclProButton; {
btn = TclProButton(QuizForm.clSender);
if(btn.Text == 'B) Değişkenler harf duyarlı değildir; ad=AD olarak kabul edilir.') {
btn.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#22c55e'); btn.SetclProSettings(btn.clProSettings); Aciklama15.Text = 'Doğru!';
} else { Aciklama15.Text = 'Yanlış. Clomosy Case-Insensitive bir yapıdadır.'; }
}
void Soru16Kontrol; var btn:TclProButton; {
btn = TclProButton(QuizForm.clSender);
if(btn.Text == 'C) Kelimeler + '' '' + arası') {
btn.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#22c55e'); btn.SetclProSettings(btn.clProSettings); Aciklama16.Text = 'Doğru!';
} else { Aciklama16.Text = 'Yanlış. Boşluk tek tırnakla eklenir.'; }
}
void Soru17Kontrol; var btn:TclProButton; {
btn = TclProButton(QuizForm.clSender);
if(btn.Text == 'D) Integer -> Tek tırnak işareti kullanılarak tanımlanan sayılar.') {
btn.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#22c55e'); btn.SetclProSettings(btn.clProSettings); Aciklama17.Text = 'Doğru!';
} else { Aciklama17.Text = 'Yanlış. Tırnak kullanılırsa veri String olur.'; }
}
void Soru18Kontrol; var btn:TclProButton; {
btn = TclProButton(QuizForm.clSender);
if(btn.Text == 'B) Hesaplama sonuçlarını saklamak ve program akışında veri taşımak için kullanılan bellek alanlarıdır.') {
btn.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#22c55e'); btn.SetclProSettings(btn.clProSettings); Aciklama18.Text = 'Doğru!';
} else { Aciklama18.Text = 'Yanlış. Değişkenler geçici bellek alanlarıdır.'; }
}
// --- ALT SEÇENEKLER ---
void OptionClicked;
var ClickedBtn: TclProButton; ImgUrl:String;
{
ClickedBtn = TclProButton(UnitForm.clSender);
ImgUrl='';
if (ClickedBtn.Text == 'A) Değişken Nedir?') { ImgUrl = ' https://lh3.googleusercontent.com/drive-storage/AJQWtBO5snso1wepxuvzbuI3UyUzK1xlOenChpv3Lnc7WFWzyWerUVDvbl08sX7_wCEFR4NPGnYLHLVJVtf6ZdyRAVFf_ZaDO3bUvD413F-RxlAeBapakA=s220" rel="nofollow - https://lh3.googleusercontent.com/drive-storage/AJQWtBO5snso1wepxuvzbuI3UyUzK1xlOenChpv3Lnc7WFWzyWerUVDvbl08sX7_wCEFR4NPGnYLHLVJVtf6ZdyRAVFf_ZaDO3bUvD413F-RxlAeBapakA=s220 '; '; }
if (ClickedBtn.Text == 'B) Veri Türleri Nedir?') { ImgUrl = ' https://lh3.googleusercontent.com/drive-storage/AJQWtBOlz-CdgGQ5RtMNarNvPCyLLCGbn93hBqY0y67t8sKaVpNM1z_dXo9A9GxQZlKkSNDoVh5bgNglixzDEPNzB2t4c5YUyLabVT6Fz8e-eCx1jFzE=s220" rel="nofollow - https://lh3.googleusercontent.com/drive-storage/AJQWtBOlz-CdgGQ5RtMNarNvPCyLLCGbn93hBqY0y67t8sKaVpNM1z_dXo9A9GxQZlKkSNDoVh5bgNglixzDEPNzB2t4c5YUyLabVT6Fz8e-eCx1jFzE=s220 '; '; }
if (ClickedBtn.Text == 'C) Tip Dönüşümleri') { ImgUrl = ' https://lh3.googleusercontent.com/drive-storage/AJQWtBNyyE-MrRcTe4F1yNT0vR9tFhozeHLcWloBHI6m2wbkZTBjwjdz6hNF2n22TSB1G4wuVmkZfA6cvVjo7mZI0g5Njmzc_XmTLcE1dbaxePluXCHJVg=s220" rel="nofollow - https://lh3.googleusercontent.com/drive-storage/AJQWtBNyyE-MrRcTe4F1yNT0vR9tFhozeHLcWloBHI6m2wbkZTBjwjdz6hNF2n22TSB1G4wuVmkZfA6cvVjo7mZI0g5Njmzc_XmTLcE1dbaxePluXCHJVg=s220 '; '; }
if (ClickedBtn.Text == 'D) Pekiştirme 2')
{
QuizForm = TclForm.Create(Self);
QuizForm.SetFormColor('#FFFFFF','',clGNone);
QuizScrollBox = QuizForm.AddNewVertScrollBox(QuizForm, 'QuizScrollBox');
QuizScrollBox.Align = alClient;
// Soru 9
Soru9Lbl = QuizForm.AddNewLabel(QuizScrollBox,'Soru9Lbl','Soru 1: Değişken tanımlama anahtar kelimesi ve tür belirleme?'); Soru9Lbl.Align = alTop; Soru9Lbl.Height = 30;
S9A = QuizForm.AddNewProButton(QuizScrollBox,'S9A','A) type kelimesi kullanılır;'); S9A.Align = alTop;
S9B = QuizForm.AddNewProButton(QuizScrollBox,'S9B','B) var kelimesi kullanılır; sistem atanan ilk değere göre türü otomatik belirler.'); S9B.Align = alTop;
S9C = QuizForm.AddNewProButton(QuizScrollBox,'S9C','C) set kelimesi kullanılır;'); S9C.Align = alTop;
S9D = QuizForm.AddNewProButton(QuizScrollBox,'S9D','D) int veya str kelimeleri kullanılır;'); S9D.Align = alTop;
QuizForm.AddNewEvent(S9A,tbeOnClick,'Soru9Kontrol'); QuizForm.AddNewEvent(S9B,tbeOnClick,'Soru9Kontrol');
QuizForm.AddNewEvent(S9C,tbeOnClick,'Soru9Kontrol'); QuizForm.AddNewEvent(S9D,tbeOnClick,'Soru9Kontrol');
Aciklama9 = QuizForm.AddNewLabel(QuizScrollBox,'Aciklama9',''); Aciklama9.Align = alTop; Aciklama9.Height = 40;
// Soru 10
Soru10Lbl = QuizForm.AddNewLabel(QuizScrollBox,'Soru10Lbl','Soru 2: Hangisi geçerli bir adlandırmadır?'); Soru10Lbl.Align = alTop; Soru10Lbl.Height = 30;
S10A = QuizForm.AddNewProButton(QuizScrollBox,'S10A','A) var 1Sayı;'); S10A.Align = alTop;
S10B = QuizForm.AddNewProButton(QuizScrollBox,'S10B','B) var Sayı 1;'); S10B.Align = alTop;
S10C = QuizForm.AddNewProButton(QuizScrollBox,'S10C','C) var Sayı_1;'); S10C.Align = alTop;
S10D = QuizForm.AddNewProButton(QuizScrollBox,'S10D','D) var if;'); S10D.Align = alTop;
QuizForm.AddNewEvent(S10A,tbeOnClick,'Soru10Kontrol'); QuizForm.AddNewEvent(S10B,tbeOnClick,'Soru10Kontrol');
QuizForm.AddNewEvent(S10C,tbeOnClick,'Soru10Kontrol'); QuizForm.AddNewEvent(S10D,tbeOnClick,'Soru10Kontrol');
Aciklama10 = QuizForm.AddNewLabel(QuizScrollBox,'Aciklama10',''); Aciklama10.Align = alTop; Aciklama10.Height = 40;
// (Kodun devamında Soru 11-18 arası UI elementleri buraya eklenebilir)
Aciklama18 = QuizForm.AddNewLabel(QuizScrollBox,'Aciklama18',''); Aciklama18.Align = alTop; Aciklama18.Height = 100;
QuizForm.Run;
}
if (Length(ImgUrl) > 8) {
ImageForm = TclForm.Create(Self);
ImgDisplay = ImageForm.AddNewImage(ImageForm, 'ImgDisplay'); ImgDisplay.Align = alClient;
UnitForm.setImage(ImgDisplay, ImgUrl);
BtnCloseImg = ImageForm.AddNewProButton(ImageForm, 'BtnCloseImg', 'Kapat');
BtnCloseImg.Align = alBottom; BtnCloseImg.Height = 50;
ImageForm.AddNewEvent(BtnCloseImg, tbeOnClick, 'CloseImageForm');
ImageForm.Run;
}
}
void VarBtnClick; {
if (VarMenuPnl.Visible) { VarMenuPnl.Visible = False; SectionPnl2.Height = 60; }
else { VarMenuPnl.Visible = True; SectionPnl2.Height = 360; }
}
{
UnitForm = TclForm.Create(Self);
UnitForm.SetFormColor('#F8FAFC', '', clGNone);
MainScrollBox = UnitForm.AddNewVertScrollBox(UnitForm, 'MainScrollBox');
MainScrollBox.Align = alClient;
SectionPnl2 = UnitForm.AddNewProPanel(MainScrollBox, 'SectionPnl2');
SectionPnl2.Align = alTop; SectionPnl2.Height = 60; SectionPnl2.Margins.Top = 10;
VarMainBtn = UnitForm.AddNewProButton(SectionPnl2, 'VarMainBtn', '2. Değişkenler ve Veri Türleri ▾');
VarMainBtn.Align = alTop; VarMainBtn.Height = 60;
VarMainBtn.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#2563EB');
VarMainBtn.clProSettings.FontColor = clAlphaColor.clWhite;
VarMainBtn.SetclProSettings(VarMainBtn.clProSettings);
UnitForm.AddNewEvent(VarMainBtn, tbeOnClick, 'VarBtnClick');
VarMenuPnl = UnitForm.AddNewProPanel(SectionPnl2, 'VarMenuPnl');
VarMenuPnl.Align = alTop; VarMenuPnl.Height = 300; VarMenuPnl.Visible = False;
BtnVarA = UnitForm.AddNewProButton(VarMenuPnl, 'BtnVarA', 'A) Değişken Nedir?');
BtnVarA.Align = alTop; BtnVarA.Height = 60; UnitForm.AddNewEvent(BtnVarA, tbeOnClick, 'OptionClicked');
BtnVarB = UnitForm.AddNewProButton(VarMenuPnl, 'BtnVarB', 'B) Veri Türleri Nedir?');
BtnVarB.Align = alTop; BtnVarB.Height = 60; UnitForm.AddNewEvent(BtnVarB, tbeOnClick, 'OptionClicked');
BtnVarC = UnitForm.AddNewProButton(VarMenuPnl, 'BtnVarC', 'C) Tip Dönüşümleri');
BtnVarC.Align = alTop; BtnVarC.Height = 60; UnitForm.AddNewEvent(BtnVarC, tbeOnClick, 'OptionClicked');
BtnVarD = UnitForm.AddNewProButton(VarMenuPnl, 'BtnVarD', 'D) Pekiştirme 2');
BtnVarD.Align = alTop; BtnVarD.Height = 60; UnitForm.AddNewEvent(BtnVarD, tbeOnClick, 'OptionClicked');
BtnVarE = UnitForm.AddNewProButton(VarMenuPnl, 'BtnVarE', 'E) Quiz');
BtnVarE.Align = alTop; BtnVarE.Height = 60; UnitForm.AddNewEvent(BtnVarE, tbeOnClick, 'OptionClicked');
UnitForm.Run;
}