4. Hafta Ders Notları (25.07.2020-26.07.2020)
Gönderilme zamanı: 09 Ağu 2020 19:22
Timer Kullanımı

10’dan başlayarak geriye doğru sayan timer ile kullanılmış kod satırlarını yazınız.

At yarışı oyunu gerçekleştiren kod satırlarını yazınız.

Formlar arası geçiş yapmak amacıyla türetilmiş uygulama kod satırlarını yazınız.
AnaForm
HedefForm

Ana Formda tasarlanmış iki sayının bulunduğu ve hesap yaptırması için 4 buton bulunan uygulamada her buton için ayrı ayrı formlarda hesap yaptırıp sonucu gösteren uygulamanın kod satırlarını yazınız.
AnaForm
ToplamaFormu
ÇıkarmaFormu
ÇarpmaFormu
BölmeFormu

Ekranda bulunan 100 adet buton içerisinde bulunan rastgele 1-100 arası sayılardan sayı bulmaya yarayan programın kod satırlarını yazınız. (Derste yapmadık ekstra örnek. İncelemeniz için.)

Dosya-Klasör-Disk IO İşlemleri

ComboBox aracı ile ilgili referans uygulama örneği


ComboBox ve ListBox Uygulaması


ListBox üzerinde arama örneği;


Timer ve ListBox Örneği


Kod: Tümünü seç
private void Form1_Load(object sender, EventArgs e)
{
timer1.Interval = 1000;
timer1.Enabled = true;
}
private void timer1_Tick(object sender, EventArgs e)
{
label1.Text = DateTime.Now.ToLongTimeString();
}

10’dan başlayarak geriye doğru sayan timer ile kullanılmış kod satırlarını yazınız.
Kod: Tümünü seç
public partial class Form1 : Form
{
int sayi = 10;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
label1.Text = sayi.ToString();
timer1.Interval = 1000;
timer1.Enabled = true;
}
private void timer1_Tick(object sender, EventArgs e)
{
sayi--;
label1.Text = sayi.ToString();
if (sayi == 0)
{ timer1.Enabled = false;
Application.Exit();
}
}

At yarışı oyunu gerçekleştiren kod satırlarını yazınız.
Kod: Tümünü seç
private void btnStart_Click(object sender, EventArgs e)
{
timer1.Interval = 170;
timer1.Enabled = true;
}
private void Form1_Load(object sender, EventArgs e)
{
this.WindowState = FormWindowState.Maximized;
comboBox1.Items.Add("Gülbatur");
comboBox1.Items.Add("ArslanBey");
comboBox1.Items.Add("BoldPilot");
comboBox1.Items.Add("Nazlı");
comboBox1.Items.Add("KılıçBey");
comboBox1.Items.Add("Gazi");
}
private void timer1_Tick(object sender, EventArgs e)
{
Random rastgele = new Random();
int sayi1 = rastgele.Next(1, 10);
int sayi2 = rastgele.Next(1, 10);
int sayi3 = rastgele.Next(1, 10);
int sayi4 = rastgele.Next(1, 10);
int sayi5 = rastgele.Next(1, 10);
int sayi6 = rastgele.Next(1, 10);
int birinciat = pictureBox1.Width;
int ikinciat = pictureBox2.Width;
int ucuncuat = pictureBox3.Width;
int dordoncuat = pictureBox4.Width;
int besinciat = pictureBox5.Width;
int altıncıat = pictureBox6.Width;
pictureBox1.Left += sayi1;
pictureBox2.Left += sayi2;
pictureBox3.Left += sayi3;
pictureBox4.Left += sayi4;
pictureBox5.Left += sayi5;
pictureBox6.Left += sayi6;
if(pictureBox1.Right>=this.Width || pictureBox1.Right >= this.Width || pictureBox2.Right >= this.Width || pictureBox3.Right >= this.Width || pictureBox4.Right >= this.Width || pictureBox5.Right >= this.Width || pictureBox6.Right >= this.Width )
{
timer1.Stop();
}
}
private void btnTekrar_Click(object sender, EventArgs e)
{
Application.Restart();
}

Formlar arası geçiş yapmak amacıyla türetilmiş uygulama kod satırlarını yazınız.
AnaForm
Kod: Tümünü seç
public partial class frmAna : Form
{
public frmAna()
{
InitializeComponent();
}
private void btnGonder_Click(object sender, EventArgs e)
{
HedefFormAc();
}
private void HedefFormAc()
{
string UrunAd = tbUrunAdi.Text;
decimal Fiyat = Convert.ToDecimal(tbFiyat.Text);
decimal KDV = Convert.ToDecimal(tbKDV.Text);
decimal KDVliFiyat = Fiyat + Fiyat * KDV / 100;
frmHedef frmhedef = new frmHedef();
frmhedef.VeriAl(UrunAd,Fiyat,KDV,KDVliFiyat);
frmhedef.Show();
}
public void OnayAl(string mesaj)
{
labelMesaj.Text = mesaj;
}
}
Kod: Tümünü seç
public partial class frmHedef : Form
{
public frmHedef()
{
InitializeComponent();
}
private void frmHedef_Load(object sender, EventArgs e)
{
}
public void VeriAl(string UrunAd,decimal Fiyat,decimal KDV,decimal KDVliFiyat)
{
labelUrunAdi.Text = UrunAd;
labelFiyat.Text = Fiyat.ToString();
labelKDV.Text = KDV.ToString();
labelKDVli.Text = KDVliFiyat.ToString();
}
private void button1_Click(object sender, EventArgs e)
{
frmAna frmana = new frmAna();
frmana.OnayAl("Veriler Aktarıldı");
frmana.Show();
}
}

Ana Formda tasarlanmış iki sayının bulunduğu ve hesap yaptırması için 4 buton bulunan uygulamada her buton için ayrı ayrı formlarda hesap yaptırıp sonucu gösteren uygulamanın kod satırlarını yazınız.
AnaForm
Kod: Tümünü seç
private void btnTopla_Click(object sender, EventArgs e)
{
ToplamaGonder();
tbSayi1.Clear();
tbSayi2.Clear();
}
public void ToplamaGonder()
{
int sayi1 = Convert.ToInt16(tbSayi1.Text);
int sayi2 = Convert.ToInt16(tbSayi2.Text);
int sonuc = sayi1 + sayi2;
ToplaForm frmtopla = new ToplaForm();
frmtopla.Show();
frmtopla.ToplamaAl(sayi1, sayi2, sonuc);
}
private void btnCikar_Click(object sender, EventArgs e)
{
CikarmaGonder();
tbSayi1.Clear();
tbSayi2.Clear();
}
public void CikarmaGonder()
{
int sayi1 = Convert.ToInt16(tbSayi1.Text);
int sayi2 = Convert.ToInt16(tbSayi2.Text);
int sonuc = sayi1 - sayi2;
CikarForm frmcikar = new CikarForm();
frmcikar.Show();
frmcikar.CikarmaAl(sayi1, sayi2, sonuc);
}
private void btnCarp_Click(object sender, EventArgs e)
{
CarpmaGonder();
tbSayi1.Clear();
tbSayi2.Clear();
}
public void CarpmaGonder()
{
int sayi1 = Convert.ToInt16(tbSayi1.Text);
int sayi2 = Convert.ToInt16(tbSayi2.Text);
int sonuc = sayi1 * sayi2;
CarpForm frmcarp = new CarpForm();
frmcarp.Show();
frmcarp.CarpmaAl(sayi1, sayi2, sonuc);
}
private void btnBol_Click(object sender, EventArgs e)
{
BolmeGonder();
tbSayi1.Clear();
tbSayi2.Clear();
}
public void BolmeGonder()
{
int sayi1 = Convert.ToInt16(tbSayi1.Text);
int sayi2 = Convert.ToInt16(tbSayi2.Text);
if (sayi2 == 0) { MessageBox.Show("Sayı 0'a bölünemez"); }
else {
double sonuc = sayi1 / sayi2;
BolForm frmbolme = new BolForm();
frmbolme.Show();
frmbolme.BolmeAl(sayi1, sayi2, sonuc);}
}
Kod: Tümünü seç
public void ToplamaAl(int sayi1, int sayi2,int sonuc)
{
labelSayi1.Text = sayi1.ToString();
labelSayi2.Text = sayi2.ToString();
labelSonuc.Text = sonuc.ToString();
Kod: Tümünü seç
public void CikarmaAl(int sayi1,int sayi2,int sonuc)
{
labelSayi1.Text = sayi1.ToString();
labelSayi2.Text = sayi2.ToString();
labelSonuc.Text = sonuc.ToString();
}
Kod: Tümünü seç
public void CarpmaAl(int sayi1,int sayi2,int sonuc)
{
labelSayi1.Text = sayi1.ToString();
labelSayi2.Text = sayi2.ToString();
labelSonuc.Text = sonuc.ToString();
}
Kod: Tümünü seç
public void BolmeAl(int sayi1,int sayi2,double sonuc)
{
labelSayi1.Text = sayi1.ToString();
labelSayi2.Text = sayi2.ToString();
labelSonuc.Text = sonuc.ToString();
}

Ekranda bulunan 100 adet buton içerisinde bulunan rastgele 1-100 arası sayılardan sayı bulmaya yarayan programın kod satırlarını yazınız. (Derste yapmadık ekstra örnek. İncelemeniz için.)
Kod: Tümünü seç
namespace WindowsFormsApp2
{
public partial class Form1 : Form
{
Random rastgele = new Random();
int sayi;
int x = 40, y = 40;
int b = 1;
int hak = 10, tekrar = 0;
public Form1()
{
InitializeComponent();
}
public void Form1_Load(object sender, EventArgs e)
{
for(int i = 0; i < 10; i++)
{
for (int j = 0; j < 10; j++)
{
sayi = rastgele.Next(0, 101);
Button btn = new Button();
btn.Name = sayi.ToString();
btn.Text = sayi.ToString();
btn.Size = new Size(40, 40);
btn.Left = x;
x += 40;
btn.Top = y;
b++;
btn.Click += new EventHandler(btn_Click);
this.Controls.Add(btn);
}
x = 40;
y += 40;
}
}
void btn_Click(object Sender,EventArgs e)
{
int aranacak = Convert.ToInt16(tbaranacak.Text);
Button btn = Sender as Button;
if (aranacak.ToString() == btn.Name)
{
MessageBox.Show("Bravo Buldunuz...Sayı = " + btn.Name + " Tekrar sayısı = " +tekrar);
}
else
{ hak--;
MessageBox.Show("Bu Değil.Sayı = " +btn.Name+ " Kalan Hakkınız = " + hak ); }
if (hak == 0) { MessageBox.Show("Malesef Bulamadınız"); }
tekrar++;
}
}
}

Dosya-Klasör-Disk IO İşlemleri
Kod: Tümünü seç
using System.IO;
namespace Dosyalama
{
public partial class Form1 : Form
{
string yol;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
}
public void YoluAl()
{
yol = tbYol.Text;
}
private void btnOlustur_Click(object sender, EventArgs e)
{ YoluAl();//Metodu çağırma işlemi
Directory.CreateDirectory(yol);//Yazılan TextBox içindeki adrese klaör oluşturma işlemleri
MessageBox.Show("Klasör oluşturuldu");
}
private void btnSil_Click(object sender, EventArgs e)
{
YoluAl();
Directory.Delete(yol);//Yolu gösterilen Klasör silme
MessageBox.Show("Klasör Silinmiştir");
}
private void btnNerde_Click(object sender, EventArgs e)
{
MessageBox.Show(Directory.GetCurrentDirectory());//Hangi Yolda olduğumuzu gösterme
}
private void btnDisk_Click(object sender, EventArgs e)
{
string[] diskler = Directory.GetLogicalDrives();//Bütün sürücüleri listeleme
lbDiskler.Items.Clear();
foreach(var item in diskler)
{
lbDiskler.Items.Add(item);
}
}
private void btnC_Click(object sender, EventArgs e)
{
lbC.Items.Clear();
string[] klasorler = Directory.GetDirectories("C:\\");//Yalnızca C içindeki Klasörleri listeleme
foreach(var item in klasorler)
{
lbC.Items.Add(item);
}
}
private void btnCDosya_Click(object sender, EventArgs e)
{
lbCDosya.Items.Clear();
string[] dosyalar = Directory.GetFiles("C:\\");//C nin altındaki dosyaları listeleme
foreach(var item in dosyalar)
{
lbCDosya.Items.Add(item);
}
}
private void btnTasi_Click(object sender, EventArgs e)
{
string tasinacak = tbTasinacak.Text;
string yeni = tbYeni.Text;
Directory.Move(tasinacak, yeni);//Dizinlerin yerlerini değiştirme metodu
MessageBox.Show(tbTasinacak.Text + " Dizini " + tbYeni.Text + " Dizinine taşındı..");
}
}

ComboBox aracı ile ilgili referans uygulama örneği


ComboBox ve ListBox Uygulaması


ListBox üzerinde arama örneği;


Timer ve ListBox Örneği

