Anonymní profil Martin – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil Martin – Programujte.comAnonymní profil Martin – Programujte.com

 

Příspěvky odeslané z IP adresy 146.102.120.–

Visual Basic › Přihlašovací script - chyba
21. 12. 2011   #151537

#1 Grow
Problém je nejspíš v tom, že na jednom řádku máš zapsáno víc příkazů. Pokud to zapíšeš takto: 

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        If TextBox1.Text = "" Then
            MsgBox("ERROR,YOU NEED AT LEAST ONE LETTER", MsgBoxStyle.Critical)
        Else
            If My.Computer.FileSystem.DirectoryExists(" C:\ACCOUNTS\" + TextBox1.Text + "\") Then
                Dim USERREAD As System.IO.StreamReader = New System.IO.StreamReader("C:\ACCOUNTS\" + TextBox1.Text + "\" + "USERNAME.TXT")
                Dim userline As String
                Dim PASSREAD As System.IO.StreamReader = New System.IO.StreamReader("C:\ACCOUNTS\" + TextBox1.Text + "\" + "PASSWORD.TXT")
                Dim PASSLINE As String
                Do
                    PASSLINE = TextBox2.Text
                    userline = USERREAD.ReadLine
                    Console.WriteLine(PASSLINE)
                    Console.WriteLine(userline)
                Loop Until userline Is Nothing
                If TextBox2.Text = "" Then
                    MsgBox("error,PLEASE INPUT A PASSWORD", MsgBoxStyle.Critical)
                Else
                    If PASSLINE = PASSREAD.ReadLine() = True Then
                        MsgBox("Youre Logd in " + TextBox1.Text)
                        Form3.Show()
                    End If
                End If
            Else
                MsgBox("THE USERNAME DONT EXIT", MsgBoxStyle.Critical)
            End If
        End If
    End Sub

chyby by měly zmizet.

Visual Basic › mnohonásobné spustenie tej i…
19. 12. 2011   #151473

#4 Trebor
Záleží na tom jak máš to dělení zapsané.
Pokud například takto:

Dim cislo As Integer
cislo = Convert.ToInt32(TextBox1.Text) / Convert.ToInt32(TextBox2.Text)

Pak jde o FormatException

Název vyjímky zjistíš například tak, že pokud k ní dojde, objeví se ti okno, kde v jeho záhlaví můžeš tento název vyčíst.

Visual Basic › mnohonásobné spustenie tej i…
17. 12. 2011   #151379
Visual Basic › Month Calendar - BOlded Dates
16. 12. 2011   #151344

#9 Trebor
Nevím, či jsem to správně pochopil, chceš zjistit zda je dnešní datum již označený(BoldDate)? 

 If MonthCalendar1.BoldedDates.Contains(Date.Today) Then
            MessageBox.Show("Dnešní datum je zvýrazněný")
 End If
Visual Basic › Month Calendar - BOlded Dates
15. 12. 2011   #151315

#7 Trebor
Dim deklaruje a alokuje místo pro proměnnou, Private, Public a další jsou modifikátory přístupu (např. Public u proměnné zaručí, že k ní jde přistupovat i odjinud, nejen ze souboru ve kterém je definována.

Zápisy: 

Private prom As Date
Dim prom As Date

jsou ekvivalentní, častěji narazíš na ten druhý zápis. Při použítí Dim se počítá, že jde o privátní proměnnou a tak se tam Private nepíše. Kdybys ho napsal před Dim, tak ti Dim zmizí a vznikne ti první zápis, podobně s použitím modifikátoru Public

Nepíše se: 

Public Dim prom As Date

ale  

Public prom As Date

Čili použít Dim místo Private v tom kódu co jsem napsal výše je naprosto v pořádku. A pokud použiješ u proměnné modifikátor přístupu lze Dim vynechat.

Visual Basic › Ukladanie obrázku z picturebox
15. 12. 2011   #151268

#11 Trebor
Tak jak už psal liborb a zlz, je třeba ukázat, jak kreslíš "do toho" PictureBoxu. Jestli kreslíš na Bitmapu pomocí Graphics a tu pak předáš PictureBoxu, mělo by vše fungovat. 

Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
        Dim b As Bitmap = New Bitmap(100, 100)
        Dim g As Graphics = Graphics.FromImage(b)
        Dim p As Pen = New Pen(Color.Red, 5)

        g.Clear(Color.White)

        g.DrawRectangle(p, 10, 10, 50, 30)
        g.Dispose()

        PictureBox1.Image = b

        PictureBox1.Image.Save("C:\Users\Uzivatel\Desktop\test.jpg", System.Drawing.Imaging.ImageFormat.Jpeg)        
End Sub

Bez nějakého podrobnějšího popisu můžeme jen stěží hádat, kde je chyba.

Visual Basic › Month Calendar - BOlded Dates
15. 12. 2011   #151267

#5 Trebor
Zkus něco takového: 

Private Datum As Date

Private Sub MonthCalendar1_DateChanged(sender As System.Object, e As System.Windows.Forms.DateRangeEventArgs) Handles MonthCalendar1.DateChanged
        MonthCalendar1.MaxSelectionCount = 1
        Datum = MonthCalendar1.SelectionRange.Start
End Sub

Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
        MonthCalendar1.AddBoldedDate(Datum)
        MonthCalendar1.UpdateBoldedDates()
End Sub
Martin
Visual Basic › Dátové typy a opravy chýb
1. 12. 2011   #150759

#5 Trebor
Protože například ignorovat dělení nulou (v tvém příkladě) asi nebude úplně v pořádku. Uživatel programu by měl dostat alespoň nějaké info (vysvětlení), kde je problém. Není dobrý zvyk řešit všechny vyjímky, tím že mají společnou chybovou hlášku nebo v horším případě, že vlastně žádnou nemají. Znám několik případů kdy programátoři odchytávají vyjímky stylem:  

Try
	'Kod kde muze byt chyba
Catch ex As Exception
	MessageBox.Show("Chyba");
End Try

Co si má uživatel o takové zprávě myslet? Catch je tam od toho, aby jsi mohl nějak vyřešit problém, který nastal nebo alespoň o něm podat nějaké info.

Když už chceš odchytávat všechno tak nějak takto:

        Try
            TextBox16.Text = CDec(TextBox17.Text) / CDec(TextBox16.Text)
        Catch ex As Exception
            MessageBox.Show(ex.Message)
        End Try

Ideální řešení by mohlo vypadat nějak takto: 

        Try
            TextBox16.Text = CDec(TextBox17.Text) / CDec(TextBox16.Text)
        Catch ex As OverflowException
            MessageBox.Show("Přetečení")
        Catch ex As DivideByZeroException
            MessageBox.Show("Pokus o dělení nulou")
        Catch ex As Exception   'ostatni vyjimky
            MessageBox.Show(ex.Message)
        End Try

Martin
Visual Basic › Dátové typy a opravy chýb
30. 11. 2011   #150715

#3 Trebor
 

Try
	TextBox16.Text = CDec(TextBox17.Text) / CDec(TextBox16.Text)
Catch ex As OverflowException
        MessageBox.Show("Zprava")
End Try

Nechci být jedovatý, ale co se nejprve naučit nějaké základy nebo alepsoň přístě zkusit použít google...

Martin
Visual Basic › Dátové typy a opravy chýb
29. 11. 2011   #150657

#1 Trebor
 

Try
	TextBox16.Text = CDec(TextBox17.Text) / CDec(TextBox16.Text)
Catch ex As Exception
End Try

Ale je to velká prasárna, ignorovat takto všechny vyjímky.

Martin
Visual Basic › Ako zistiť či je v TextBox d…
29. 11. 2011   #150638

#1 Trebor
 

Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
        Dim jeTam As Boolean = TextBox1.Text.Contains(",")

        If jeTam Then
            MessageBox.Show("Je tam")
        Else
            MessageBox.Show("Není tam")
        End If
End Sub
Martin
.NET › C# Změna velikosti ikon na p…
28. 10. 2011   #149283

#3 Josef Doležal
A nestačilo by ukončit proces exploreru a opětovně jej spustit?

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý