Şimdi Ara

c# Progressbar - Hesap Makinesi - Dijital saat

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
3 Misafir - 3 Masaüstü
5 sn
5
Cevap
0
Favori
1.815
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Merhabalar benim 3 ayrı sorum olacaktı.
    Şimdi 3 tane ödevim var baya baya bitirdim bi kısmını 1.Sorum hesap makinesi yapıyorum.hesap makinesi bu ve bütün işlevlerini yaptım ancak şöyle bi sıkıntım var , lü sayılarla işlem yaptırtamıyorum.Göründüğü gibi önce 1.sayı sonra işlem sonra 2.sayı seçilip eşittire basılıyor.Sonucu yazıyor.
    ________________________________________________________________________________________
    Birinci sıkıntım virgüllü işlemleri yaptıramıyorum bunu nasıl yapabilirim
    2.sıkıntım mesela 5 + 6 = 11 dediğinde sırasıyla sayılara basınca diğer bastığı sayı siliniyor ve en son 11 yazıyor demek istediğim her bastığı butonun özelliği ekrandan gitmesin direk 5 + 6 = 11 yazsın istiyorum.Beceremedim yardımlarınızı bekliyorum.

     c# Progressbar - Hesap Makinesi - Dijital saat

    ________________________________________________________________________________________
    İkinci sorum ise dijital saat yapıyorum Saat Dakika Saniye ve Saliseyi gösterecek Bir butonu tıkladığında başlatacak Bir butona tıkladığında durduracak.
    İf ile kontrol ettirdim ve onda da şöyle bi sıkıntım var Salise için Timer ın Invertal değerini kaç yapmalıyım.1000 yaparsam 1 saniye ye denk geliyor.Ancak salise tam doğru çalışmıyor bu sefer.veya nasıl bi kontrol yapabilirim yardımcı olur musunuz ?
    Kod en aşağıda bakabilesiniz diye koydum sıkıntı yok gibi ama.
    ________________________________________________________________________________________
    3.sorum ise. Şöyle Bir tane combobax olacak ve onda bulunduğu sistemin diskleri görüncek yani c: d: kaç tane varsa.
    ve orda seçilen sürücünün altta progressbar da doluluk oranı görünecek yani %70 vs...
    Bunu hiç yapamadım kaynak ta bulamadım...Diğerlerinde belli bi yere kadar geldim ama.
    Yardımlarınızı bekliyorummm
    ________________________________________________________________________________________
    private void button1_Click(object sender, EventArgs e) 
    {
    timer1.Start();
    }

    private void button2_Click(object sender, EventArgs e)
    {
    timer1.Stop();
    }

    private void timer1_Tick(object sender, EventArgs e)
    {
    if (salise < 60) salise++;
    else
    {
    salise = 0;
    if (saniye < 59) saniye++;
    else
    {
    saniye = 0;
    if (dakika < 59) dakika++;
    else
    {
    dakika = 0;
    if (saat < 23) saat++;
    else
    { saat = 0; }
    }
    }
    }
    label1.Text= saat.ToString();
    label3.Text= saniye.ToString();
    label2.Text= dakika.ToString();
    label4.Text = salise.ToString();

    }

    private void Form1_Load(object sender, EventArgs e)
    {
    timer1.Enabled = false;
    }




    < Bu mesaj bu kişi tarafından değiştirildi cesurkomando -- 22 Ekim 2012; 17:26:25 >







  • 1. soru:

    textboxdaki veriyi nasıl işliyosun bilmiyorum tam olarak onu da yazarsan nasıl yapıcagını anlatırım, muhtemelen double,float olarak almıyosun textboxdan gelen veriyi direk int ye çeviriyosun ondan.

    2.soru
    1000 = 1sn demek sen salise falan en ince ayrıntısına ineceksin, 100 yapman mantıklı vikipedia da 100ms = 6 salise yazıyo ona göre ayarlarsın artık.

    3.soru

    System.Management namespace'i altında ManagementObjectSearcher var bunla tüm donanım bilgilerine ulaşabilirsin internette araştırma yapman yeterli olucaktır neye nasıl ulaşacağın msdn var
  • kodlar tamamen aşağıda.bütün intleri double a çevirdim. evet int olarak alıyordum textbox tan.
    şu an işlemleri yapıyor ama yine hatalı oluyor malesef.Ya da kodlarda hatalar var mı ? Bi inceler misiniz ?
    _________________________________________________________________________________________
    2.cevap için 100 yapınca çok yavaş gidiyo 10 yapınca biraz daha normal saniye gibi atıyo ama 60 saniye normal saatin saniyesi sayıyosa benimki 62 lerde oluyo filan o şekil bi eksiklik var ama çözemedim tam.
    ________________________________________________________________________________________
    3.cevap için de teşekkürler araştırıcam.
    bütün cevaplar için teşekkürler...

    using System; 
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;

    namespace carpimtablosu
    {
    public partial class Form1 : Form
    {
    public Form1()
    {
    InitializeComponent();
    }
    double a; //tutalacak sayının değişkeni
    string op; //tutulacak operatörün değişkeni.Burda yazmamızın sebebi tüm butonlarda kullanabilmek için
    private void button1_Click(object sender, EventArgs e)
    {
    textBox1.Text += button1.Text;
    }

    private void button2_Click(object sender, EventArgs e)
    {
    textBox1.Text += button2.Text;
    }

    private void button3_Click(object sender, EventArgs e)
    {
    textBox1.Text += button3.Text;
    }

    private void button5_Click(object sender, EventArgs e)
    {
    textBox1.Text += button5.Text;
    }

    private void button6_Click(object sender, EventArgs e)
    {
    textBox1.Text += button6.Text;
    }

    private void button7_Click(object sender, EventArgs e)
    {
    textBox1.Text += button7.Text;
    }

    private void button9_Click(object sender, EventArgs e)
    {
    textBox1.Text += button9.Text;
    }

    private void button10_Click(object sender, EventArgs e)
    {
    textBox1.Text += button10.Text;
    }

    private void button11_Click(object sender, EventArgs e)
    {
    textBox1.Text += button11.Text;
    }

    private void button13_Click(object sender, EventArgs e)
    {
    textBox1.Text += button13.Text;
    }

    private void button14_Click(object sender, EventArgs e)
    {
    textBox1.Text = " ";
    }

    private void button4_Click(object sender, EventArgs e)
    {

    a = double.Parse(textBox1.Text);
    textBox1.Text=" ";
    op="+";
    }

    private void button15_Click(object sender, EventArgs e)
    {
    switch (op)
    {
    case ".":
    textBox1.Text = Convert.ToString(a + double.Parse(textBox1.Text) + "=");
    break;
    case"^":
    double sonucusalma;
    sonucusalma = Math.Pow(a, double.Parse(textBox1.Text));
    textBox1.Text = Convert.ToString(sonucusalma + "=" + textBox1.Text + "^" + a);
    break;
    case "%":
    textBox1.Text = Convert.ToString(a % double.Parse(textBox1.Text) + "=");
    break;
    case "+":
    textBox1.Text = Convert.ToString(a + double.Parse(textBox1.Text) + "=");
    break;
    case "-":
    textBox1.Text = Convert.ToString(a - double.Parse(textBox1.Text) + "=");
    break;
    case "*":
    textBox1.Text = Convert.ToString(a * double.Parse(textBox1.Text) + "=");
    break;
    case "/":
    try
    {
    textBox1.Text = Convert.ToString(a / double.Parse(textBox1.Text) + "=");//burada bölme işlemini yapıyor
    }
    catch (DivideByZeroException ee) //sıfıra bölme hatası divide=bölme, exception=hata
    {
    MessageBox.Show(ee.Message);
    };
    break;


    }
    }

    private void button8_Click(object sender, EventArgs e)
    {
    a = double.Parse(textBox1.Text);
    textBox1.Text = " ";
    op = "-";
    }

    private void button12_Click(object sender, EventArgs e)
    {
    a = double.Parse(textBox1.Text);
    textBox1.Text = " ";
    op = "*";
    }

    private void button16_Click(object sender, EventArgs e)
    {
    a = double.Parse(textBox1.Text);
    textBox1.Text = " ";
    op = "/";
    }

    private void button17_Click(object sender, EventArgs e)
    {
    a = double.Parse(textBox1.Text);
    textBox1.Text +=".";
    op = ".";
    }

    private void button18_Click(object sender, EventArgs e)
    {
    a = double.Parse(textBox1.Text);

    double sonuckokalma;
    sonuckokalma = double.Parse(a.ToString());
    textBox1.Text = Convert.ToString( Math.Sqrt(sonuckokalma) + "=" + a + "√" );
    }

    private void button19_Click(object sender, EventArgs e)
    {
    a = double.Parse(textBox1.Text);
    textBox1.Text = " ";
    op = "^";

    }

    private void button20_Click(object sender, EventArgs e)
    {
    a = double.Parse(textBox1.Text);
    textBox1.Text = " ";
    op = "%";
    }

    private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
    {
    if (char.IsLetter(e.KeyChar))//metin girişini engelliyor
    {
    e.Handled = true;
    }
    }
    }
    }



    < Bu mesaj bu kişi tarafından değiştirildi cesurkomando -- 22 Ekim 2012; 17:26:07 >




  • 1. soru:

    baya karmaşık bi kod yazma biçimin var, double.Parse yerine float.parse dene bu olay nokta yada virgul kullanmanla alakalı bilgisayarın region'unda ayarları var bunun digits bilmem ne diye geçiyo double nokta istiyebilir virgul yerine yada aynı şekilde float birde kodlarını daha fazla açıp break point koyup inceleye bilirsin yaptıgın işlemleri geriye ne dönderiyo nerde sorun oluyo falan diye.

    2. soru: bunu yapmaktansa ticksle çöz olayı şu şekil örnek bi kod yazıyorum

    Start yaptıgında yapılcak kod:
     
    public long tick;

    void button_click(){
    tick = DateTime.Now.Ticks;
    }
    void timer_tick(){
    DateTime time = DateTime.Now;
    label1.Text = new DateTime(time.Ticks - tick).ToString(); //burda tostring değilde toshortdatetime tarzında bişiler kullanıp sadece saati almak istersin yoksa 1970 li yıllarla alakalı bi tarihde çıkacaktır.
    }

    //timer in intervalını kaç yaparsan ona göre sürekli güncelliycektir aradan geçen zamanı



    edit:eğer bi daha kod yazarsan buraya code tag'i altında yazarsan benim gibi daha iyi anlaşılabilir, bide yukarıdaki kodları denemedim ama çalışıcaktır



    < Bu mesaj bu kişi tarafından değiştirildi alm.oz -- 22 Ekim 2012; 16:50:39 >




  • quote:

    Orijinalden alıntı: aLiM KaFKeF

    1. soru:

    baya karmaşık bi kod yazma biçimin var, double.Parse yerine float.parse dene bu olay nokta yada virgul kullanmanla alakalı bilgisayarın region'unda ayarları var bunun digits bilmem ne diye geçiyo double nokta istiyebilir virgul yerine yada aynı şekilde float birde kodlarını daha fazla açıp break point koyup inceleye bilirsin yaptıgın işlemleri geriye ne dönderiyo nerde sorun oluyo falan diye.

    2. soru: bunu yapmaktansa ticksle çöz olayı şu şekil örnek bi kod yazıyorum

    Start yaptıgında yapılcak kod:
     
    public long tick;

    void button_click(){
    tick = DateTime.Now.Ticks;
    }
    void timer_tick(){
    DateTime time = DateTime.Now;
    label1.Text = new DateTime(time.Ticks - tick).ToString(); //burda tostring değilde toshortdatetime tarzında bişiler kullanıp sadece saati almak istersin yoksa 1970 li yıllarla alakalı bi tarihde çıkacaktır.
    }

    //timer in intervalını kaç yaparsan ona göre sürekli güncelliycektir aradan geçen zamanı



    edit:eğer bi daha kod yazarsan buraya code tag'i altında yazarsan benim gibi daha iyi anlaşılabilir, bide yukarıdaki kodları denemedim ama çalışıcaktır

    Teşekkürler cevapların için haleltmeye çalışacağım.Kolay gelsin.Dediğin gibi düzelttim kodları...




  • Yapay Zeka’dan İlgili Konular
    Daha Fazla Göster
    
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.