Merhaba arkadaşlar,
Bu örneğimde sizlere basit bir GSM şirketinin internet paketi sistemini anlatmaya çalışacağım.
Bu programda basit olarak if kalıbını textBox'tan değer alma string olarak label'lere atama kavramını ve de en önemlisi timer nesnesini anlamaya çalışacağız. Zamanım kısıtlı olduğu için fazla detaya in(e)medim. Gerekli olduğunu da düşünmüyorum.
Umarım birşeyler anlatmaya çalışmışımdır.
Teşekkürler, iyi çalışmalar
H.Berat YILDIRIM
Bu örneğimde sizlere basit bir GSM şirketinin internet paketi sistemini anlatmaya çalışacağım.
Bu programda basit olarak if kalıbını textBox'tan değer alma string olarak label'lere atama kavramını ve de en önemlisi timer nesnesini anlamaya çalışacağız. Zamanım kısıtlı olduğu için fazla detaya in(e)medim. Gerekli olduğunu da düşünmüyorum.
Umarım birşeyler anlatmaya çalışmışımdır.
Teşekkürler, iyi çalışmalar
Kod:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication89
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
double bakiye, gunluk=3.99,saatlik=0.99,haftalik=18.99,kalan; // double olarak değişkenlerimi tanımlıyorum
private void button1_Click(object sender, EventArgs e)
{
if (textBox1.Text == "ABONE HAFTALIK") // eğer textbox1 e abone haftalık yazılmıs ise,
{
if (bakiye < 18.99) // bakiye haftalık paketten az ise bakiyenin yetmedigi bilgisini göster(t)iyorum
{
MessageBox.Show("Sayin abonemiz yeterli kredi(niz) bulunmamaktadır.Yukleme yaptıgınızda tekrar deneyiniz.İyi günler");
}
else // değilse Abonelik talebi başlatıyorum...
{
MessageBox.Show("Abonelik talebiniz alinmistir.Yukleme islemi talebi alindiginda bilgilendirileceksiniz");
Random r = new Random(); // rastgele deger üretiyorum
int sure = r.Next(3000, 8000); // 3 ila 8 saniye arasında süre üretiyorum.
// Farzediyorum ki Gsm operatörü yogun mesaj gec gelebiliyor.Bu mantıkla
// mesajın gelme süresini farklı süre yap(tırt)ıyorum.
timer1.Enabled = true; // timer'imi aktif edip baslatıyorum
timer1.Start();
timer1.Interval = sure; // timer1 in değerini rastgele olusan "sure " değişkenime aktarıyorum
}
}
else if (textBox1.Text == "ABONE SAATLIK") // eğer "abone saatlik" yazılmıssa
{
if (bakiye < 3.99) // bakiye 3.99 dan kücükse bakiyenin yetersiz oldugunu bildir(t)iyorum
{
MessageBox.Show("Sayin abonemiz yeterli kredi(niz) bulunmamaktadır.Yukleme yaptıgınızda tekrar deneyiniz.İyi günler");
}
else // değilse abonelik talebi baslatıyorum.ve yüklenildiginde bildirilecegini söylüyorum
{
MessageBox.Show("Abonelik talebiniz alinmistir.Yukleme islemi talebi alindiginda bilgilendirileceksiniz");
Random r = new Random(); // rastgele deger üretiyorum
int sure = r.Next(3000, 8000); // 3 ila 8 saniye arasında süre üretiyorum.
// Farzediyorum ki Gsm operatörü yogun mesaj gec gelebiliyor.Bu mantıkla
// mesajın gelme süresini farklı süre yap(tırt)ıyorum.
timer1.Enabled = true; // timer'imi aktif edip baslatıyorum
timer1.Start();
timer1.Interval = sure; // timer1 in değerini rastgele olusan "sure " değişkenime aktarıyorum
}
}
else if (textBox1.Text == "ABONE GUNLUK") // burası da yukarıdaki gibidir.
{
if (bakiye < 3.99)
{
MessageBox.Show("Sayin abonemiz yeterli kredi(niz) bulunmamaktadır.Yukleme yaptıgınızda tekrar deneyiniz.İyi günler");
}
else
{
MessageBox.Show("Abonelik talebiniz alinmistir.Yukleme islemi talebi alindiginda bilgilendirileceksiniz");
Random r = new Random();
int sure = r.Next(3000,8000);
timer1.Enabled = true;
timer1.Start();
timer1.Interval = sure;
}
}
else // Yukarıdaki paketlerden hiçbiri değil ise yanlıs giris yaptınız mesaji ver(dirt)iyoruz.
{
MessageBox.Show("SAYIN ABONEMIZ EKSIK YA DA YANLIS GİRİS YAPTINIZ.LÜTFEN 'ABONE PAKETADI' YAZIP TEKRAR GONDERIN.BU MESAJ UCRETSIZDIR.SORUN DEVAM EDIYORSA MUSTERI HIZMETLERIMIZLE IRTIBATA GECINIZ");
}
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
}
private void timer1_Tick(object sender, EventArgs e) // timerin tick eventinde..
{
MessageBox.Show("Paketiniz yüklenmiştir"); // Önce paket yüklendigi bildirisini sunuyorum
if (textBox1.Text == "ABONE GUNLUK") // Eğer textBox1 deki değerim ABONE GUNLUK ise
{
kalan = bakiye - gunluk; // kalan bakiyemi , mevcut- gunluk olarak alıp..
label13.Text = kalan.ToString(); //..string olarak label13 e aktarıyorum
}
else if (textBox1.Text == "ABONE SAATLIK") // Eğer textBox1 deki değerim ABONE SAATLIK ise
{
kalan = bakiye - saatlik; // kalan bakiyemi , mevcut - saatlik olarak alıp..
label13.Text = kalan.ToString(); // string olarak label13 (bakiyemin gösterildigi label)e aktarıyorum
}
timer1.Enabled = false; // timer1 tek sefer calısması için event'inde enable durumunu "false" yapıp..
timer1.Stop(); //..timer'i durdur(t)uyorum..
}
private void Form1_Load(object sender, EventArgs e)
{
bakiye = Convert.ToDouble(label13.Text);
}
}
}
H.Berat YILDIRIM