Picturebox obnovení   zodpovězená otázka

VB.NET, WinForms

Dobrý den,

Mohl by mi někdo poradit s problémem, na který jsem narazil.

Zřejmě je to banální věc ale nemohu na to přijít. Mám picturebox a do něj v události paint vykresluji třeba úsečku. Počáteční a koncové souřadnice beru ze 4 textboxů, které obsahují číselné hodnoty. Jestliže spustím aplikaci a vymažu hodnotu jednoho z textboxů, picturebox přeškrtnou 2 čáry. Poté do textboxu napíšu nějaká čísla, ale přeškrtnutí stále trvá, tak textbox obnovím pomocí Refresh a nic se nestane. Poradíte jak na to?

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Zkuste to vykreslovat přímo na formulář a pokud bude problém přetrvávat, dejte sem kód kterým to vykreslujete.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Problém je stejný i v případě vykreslování na formulář.

Kód:

Public Class Form1
    Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged, TextBox2.TextChanged, TextBox3.TextChanged, TextBox4.TextChanged
        Me.Refresh()
    End Sub

    Private Sub PictureBox1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles PictureBox1.Paint
        Dim pen As New Pen(Color.Turquoise, 5)
        e.Graphics.DrawLine(pen, CInt(TextBox1.Text), CInt(TextBox2.Text), CInt(TextBox3.Text), CInt(TextBox4.Text))
    End Sub
End Class

Pokud je jeden z textboxu prázdný pote nastane tohle:

http://img213.imageshack.us/img213/996/p...

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Jak chcete hodnotu String.Empty v případě prázdného TextBoxu převést na Integer? To samozřejmě dojde k vyjímce, která způsobí přeškrtnutí PictureBoxu a ten dále kód v události Paint nezpracovává.

Už jsem tady psal milionkrát že pro zadávání číselných hodnot se používá NumericUpDown a ne TextBox, ale to je jako příslovečné házení perel sviním.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Děkuji za odpověď. Nějak mi to nedošlo.

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback