İyinet'e Hoşgeldiniz!

Türkiye'nin En Eski Webmaster Forum'una Hemen Kayıt Olun!

Kayıt Ol!

C# Gsm Şirket(ler)i Basit Tarife Örneği

beratxt

0
İyinet Üyesi
Onaylı Üye
Katılım
18 Eylül 2010
Mesajlar
656
Reaction score
3
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






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
 

Türkiye’nin ilk webmaster forum sitesi iyinet.com'da forum üyeleri tarafından yapılan tüm paylaşımlardan; Türk Ceza Kanunu’nun 20. Maddesinin, 5651 Sayılı Kanununun 4. maddesinin 2. fıkrasına göre, paylaşım yapan üyeler sorumludur.

Üst