Schrijf een programma met een textbox voor de invoer

Status
Niet open voor verdere reacties.

DesertFox

Gebruiker
Lid geworden
11 mei 2013
Berichten
5
Ik krijg op mijn hbo Elektrotechniek opleiding deze opdracht:
Schrijf een programma met een textbox voor de invoer van een getal. Na het drukken op een button wordt de tafel van 1 t/m 10 maal dat getal weergegeven.
Hieronder een mogelijk scherm:



Mijn code is als volgt:

[
Code:
I]Public Class Form1

    Private Sub GroupBox1_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs)

    End Sub

Code:
Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged



    End Sub

Code:
 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

    End Sub

Code:
Private Sub HScrollBar1_Scroll(ByVal sender As System.Object, ByVal e As System.Windows.Forms.ScrollEventArgs) Handles HScrollBar1.Scroll
        TextBox1.Text = HScrollBar1.Value + vbTab + HScrollBar1.Value + vbCrLf
       
        TextBox2.Text = HScrollBar1.Value


    End Sub
End Class[/I]

Het is igg niet de bedoeling om de scrollbar te gebruiken, maar ik weet niet welk component ik moet gebruiken voor de invoer van ingetikte getallen. Als ik een tekstbox gebruik en ik TextBox1.Text = Textbox1.Value gebruik krijg ik een error.

Ik snap niks van de vbTab functie. De uitleg die ik krijg:
Zoals je intussen wel weet zet je met de functie TextBox.Text = „…..‟ tekst in een Textbox.
Je kunt dan ergens achter het „=‟ teken met + vbTab en met + vbCrLf een tab resp. een carriagereturn/linefeed afdrukken.
Bijvoorbeeld: Textbox.Text = “aap” + vbTab + “noot” + vbCrLf

??? Ik snap dat de waardes op verschillende regels geprogrammeerd moeten worden maar voor de rest snap ik er niks van... Wie kan me verder helpen?
 
Laatst bewerkt door een moderator:
Allereerst: Welkom op Helpmij!
Even wat anders dan een antwoord op je vraag: Zet een stuk code voortaan in de code tags.
Dus als volgt:
Code:
Dit is mijn code
 
Hallo,

Ik weet niet of het handig is om een textbox te gebruiken voor het weergeven van de uitkomsten. Aangezien het een lijstje is, raad ik aan om een listbox/listview te gebruiken. Ik zou persoonlijk de tweede aanraden omdat die iets meer mogelijkheden heeft, maar daardoor is hij in het begin ook iets moeilijker te begrijpen.

vbTab/vbCrLf zijn 'gewoon' tekens. vbTab is een tab-teken (het teken wat er komt als je op je toetsenbord op tab drukt). vbCrLf schrijf ik zelf liever als vbNewLine, omdat het een enter teken is.


Het is igg niet de bedoeling om de scrollbar te gebruiken, maar ik weet niet welk component ik moet gebruiken voor de invoer van ingetikte getallen. Als ik een tekstbox gebruik en ik TextBox1.Text = Textbox1.Value gebruik krijg ik een error.

Voor ingetikte getallen kan je meerdere controls gebruiken. De textbox is hier opzich prima voor. Let dan wel op dat er alleen getallen ingevoerd mogen worden en je daar dus ook nog op moet checken.
Verder is het zo, dat TextBox1.Text de inhoud van de textbox als waarde heeft, zoals HScrollBar1.Value de 'inhoud' van de scrollbar als waarde heeft. Zie hier voor 'officiële' documentatie: http://msdn.microsoft.com/en-us/library/k6w057xy(v=vs.71).aspx.

Ik hoop je hierbij een eind op weg te hebben gebracht,
MartinJM
 
Laatst bewerkt:
Beste DesertFox,

Leuk opdrachtje zo op zondag morgen.
Heb even een programmatje voor je gemaakt.
Heb een Textbox voor de invoer, een Button voor de opdracht en een ListBox, geen TextBox, voor de uitkomst
Net zo als je afbeelding
Code:
Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        If IsNumeric(txtTafel.Text) Then
            lbTafel.Items.Clear()
            Tafel(txtTafel.Text)
        Else : MessageBox.Show("Foute invoer", "Foutje", MessageBoxButtons.OK, MessageBoxIcon.Information)
            txtTafel.Clear()
        End If
    End Sub

    Sub Tafel(ByVal Tafel As Integer)
        Dim Uitkomst As Integer
        For I = 1 To 10
            Uitkomst = I * Tafel
            lbTafel.Items.Add(I & vbTab & Uitkomst)
        Next
    End Sub
End Class

Ik hoop dat je er wat aan hebt.

Groet MantsjeKlaas
 
Bedankt voor je moeite alvast.

Heb je VB gebruikt om te testen of je programma werkt?

Ik krijg allemaal errors:
Error 1 'Text' is not a member of 'Integer'. C:\Users\h\documents\visual studio 2010\Projects\prg op 3\prg op 3\Form1.vb 6 22 prg op 3
Error 2 'lbTafel' is not declared. It may be inaccessible due to its protection level. C:\Users\h\documents\visual studio 2010\Projects\prg op 3\prg op 3\Form1.vb 7 13 prg op 3
Error 3 'Text' is not a member of 'Integer'. C:\Users\h\documents\visual studio 2010\Projects\prg op 3\prg op 3\Form1.vb 8 19 prg op 3
Error 4 'Clear' is not a member of 'Integer'. C:\Users\h\documents\visual studio 2010\Projects\prg op 3\prg op 3\Form1.vb 10 13 prg op 3
Error 5 'lbTafel' is not declared. It may be inaccessible due to its protection level. C:\Users\h\documents\visual studio 2010\Projects\prg op 3\prg op 3\Form1.vb 18 13 prg op 3

Ik heb nu bovenaan staan:
Code:
 Dim IbTafel As Integer
    Dim txtTafel As Integer
EN krijg nog steeds error dat ze niet 'declared' zijn.
 
Laatst bewerkt door een moderator:
Maak een listbox met de naam lbTafel en maak een textbox met de naam txtTafel.

Pim

[EDIT]En haal dit weg:
Code:
 Dim IbTafel As Integer
    Dim txtTafel As Integer
[/EDIT]
 
Laatst bewerkt:
Ik krijg op mijn hbo Elektrotechniek opleiding deze opdracht

MantsjeKlaas: De TS geeft zelf al aan dat het een opdracht voor school is. Die zijn er alleen zodat de studenten ervan kunnen leren. Daarom is het niet de bedoeling dat je hier gewoon een programma voor hem maakt wat precies doet wat hij wil. Dan zal hij er minder of zelfs niks van leren.

DesertFox: Ik raad je aan om, als je de code van MantsjeKlaas gebruikt, zeker te weten dat je het snapt en kan reproduceren.

MartinJM
 
Ik ben er van uit gegaan dat een gemiddelde HBO'er zijn eigen verantwoording kan nemen als hij een vraag op een forum plaatst.
Ik heb het gemaakt om iemand te helpen die in mijn ogen het spoor kwijt was sorry hiervoor dan.

MantsjeKlaas
 
Ik heb (helaas) genoeg mensen ontmoet die die verantwoordelijkheid niet nemen.
Ik heb het idee dat mijn opmerking verkeerd is aangekomen, wat niet mijn bedoeling is. Mijn excuses hiervoor.

Verder heb je wel gelijk, ieder die hier een vraag plaatst (al dan niet met betrekking tot huiswerk), zou zelf de verantwoordelijkheid moeten nemen om het antwoord goed te gebruiken (en te begrijpen). Maar zoals ik eerder in deze post al aangaf, helaas doen sommige mensen dat niet. Vooral in een studie kan dat problemen gaan geven.

MartinJM

[edit]
@DesertFox: Ik zeg niet dat je geen verantwoordelijkheid kan nemen, maar er zijn mensen die dat niet kunnen....
[/edit]
 
Laatst bewerkt:
Beste MartinJM,

Ik heb alle begrip voor je opmerking en zal er in het vervolg beter opletten.
Ik denk dat we beide onze mening hebben gegeven.
Fijn weekend verder en op naar het volgende topic.

Groet MantsjeKlaas
 
Volgens mij kan de vraag nu op opgelost. Dus topicstarter, druk maar in je startpost op ´Zet vraag opgelost´.

Pim
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan