Şimdi Ara

c# yardım

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
4
Cevap
0
Favori
697
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Ustalar merhaba sorunum şu boyutunu ayarladığım textbox'ın font sizesi program çalıştığında 32. textbox'ın keypress eventine aşağıdaki komutu girsdim
    textBox1.Font = new Font(textBox1.Font.FontFamily, textBox1.Font.Size - 1);
    her karakter girdiğimde punto - eksiliyor.ççççç Ancak sorunum şu silme tuşuna basıpta karakter azalttığımdada küçülme devam ediyor.Bu sorunu nasıl çözebilirim. if else ile denedim
    elseye
    textBox1.Font = new Font(textBox1.Font.FontFamily, textBox1.Font.Size + 1);
    yazdım olmadı.Henüz c# yeni başladım.Konu hakkında yardımlarınızı bekiyorum.şimdiden teşekkürler



    < Bu mesaj bu kişi tarafından değiştirildi PLar3s3 -- 12 Nisan 2014; 15:18:35 >



  • güncel
  • quote:

    Orijinalden alıntı: PLar3s3

    Ustalar merhaba sorunum şu boyutunu ayarladığım textbox'ın font sizesi program çalıştığında 32. textbox'ın keypress eventine aşağıdaki komutu girsdim
    textBox1.Font = new Font(textBox1.Font.FontFamily, textBox1.Font.Size - 1);
    her karakter girdiğimde punto - eksiliyor.ççççç Ancak sorunum şu silme tuşuna basıpta karakter azalttığımdada küçülme devam ediyor.Bu sorunu nasıl çözebilirim. if else ile denedim
    elseye
    textBox1.Font = new Font(textBox1.Font.FontFamily, textBox1.Font.Size + 1);
    yazdım olmadı.Henüz c# yeni başladım.Konu hakkında yardımlarınızı bekiyorum.şimdiden teşekkürler

    İstediğiniz sanırım yazılar çoğaldıkça fontu küçültmek, yazılar azaldıkça fontu büyütmek. Buyrun:

     
    private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
    {
    if ((e.KeyChar == (char)8))
    {
    if (textBox1.Text != ("")) // Eğer silinecek karakter yok ise Punto'yu arttırma.
    textBox1.Font = new Font(textBox1.Font.FontFamily, textBox1.Font.Size + 1); // Her sildiğinde bir arttır. (Backspace)
    }
    else
    {
    textBox1.Font = new Font(textBox1.Font.FontFamily, textBox1.Font.Size - 1); // Her karakterde bir eksilt.
    }
    }

    private void textBox1_KeyDown(object sender, KeyEventArgs e)
    {
    if (e.KeyCode == Keys.Delete)
    {
    if (textBox1.Text != ("")) // Eğer silinecek karakter yok ise büyültme (Delete)
    textBox1.Font = new Font(textBox1.Font.FontFamily, textBox1.Font.Size + 1);
    }
    }


    Ancak toplu seçimlerde bunun 32 Puntoya dönmesini istiyorsanız TextChanged bölümüne de bir kod girmeniz gerekir.
    Örneğin 30 karakter girip, seçip hepsini silerseniz font aynı kalır. Bunu önlemek için:

    private void textBox1_TextChanged(object sender, EventArgs e) 
    {
    if (textBox1.Text == (""))
    {
    int boyut = 32;
    textBox1.Font = new Font(textBox1.Font.FontFamily, boyut); // textBox'ta hiç karakter yoksa Puntoyu 32'ye çevirdik.
    }
    }


    Umarım yardımcı olur.

    NOT: Tabi bu yol ile sadece karakteri doğru yerden silme işlemi ile yapabilirsiniz. Yani eğer textBox'ta karakter var ise, imleçte en solda ise Backspace'e bastığınızda font büyüyecektir. Aynı şekilde delete tuşu içinde geçerli.



    < Bu mesaj bu kişi tarafından değiştirildi JB.Burak -- 12 Nisan 2014; 21:52:37 >




  • if (e.KeyChar == '\b' ^ e.KeyChar == ' ')
    {
    textBox1.Font = new Font(textBox1.Font.FontFamily, textBox1.Font.Size + 1);
    }
    else
    {
    textBox1.Font = new Font(textBox1.Font.FontFamily, textBox1.Font.Size - 1);
    }

    if (textBox1.Text == (""))
    {
    int boyut = 48;
    textBox1.Font = new Font(textBox1.Font.FontFamily, 48);
    yukarıda verdiğin komut sayesinde farketmediğim bir hata sayende halloldu.



    < Bu mesaj bu kişi tarafından değiştirildi PLar3s3 -- 13 Nisan 2014; 9:07:57 >
  • Yapay Zeka’dan İlgili Konular
    c'de yardım
    13 yıl önce açıldı
    Daha Fazla Göster
    
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.