T-spoilerGR Δημοσ. 29 Απριλίου 2010 Δημοσ. 29 Απριλίου 2010 Γεια χαρα, φτιαχνω ενα προγραμματακι σε vb 2008 το οποιο διαβαζει απο σειριακη θυρα δεδομενα. Το προβλημα ειναι οτι στην εκτυπωση μου εμφανιζει τους σωστους αριθμους αλλα κολλημενους μαζι. Πως μπορω να εμφανισω καθε αριθμο σε διαφορετικη γραμμη; π.χ θελω 1 2 3 4 αλλα παιρνω 1234. τι να κανω??? Αν χρειαζεστε κ αλλες πληροφοριες ή κωδικα πειτε μου.
sanidas Δημοσ. 29 Απριλίου 2010 Δημοσ. 29 Απριλίου 2010 Κάθε φορά που θα λαμβάνεις έναν αριθμό (καλώ θα είναι να παραθέσεις τον κώδικα αν χρειαστεί να σε βοηθήσω περισσότερο) θα προσθέτεις και τον χαρακτήρα vbnewline (είναι στο namespace Microsoft.VisualBasic.Constants)
T-spoilerGR Δημοσ. 30 Απριλίου 2010 Μέλος Δημοσ. 30 Απριλίου 2010 Ναι κατι τετοιο πρεπει να κανω αλλα το προβλημα ειναι οτι το διαβασμα γινετε σε μια εντολη σαν string.Ειμαι καινουριος στη visual basic και δεν ξερω πως να διαβασω σαν ξεχωριστους αριθμους την εισοδο. Η συναρτηση που διαβαζει και τυπωνει ειναι: Sub DataReceived() Try TextBox1.Text = myComPort.ReadExisting Catch ex As TimeoutException MessageBox.Show(ex.Message) End Try End Sub Καταλαβαινω οτι δεν ειναι οτι καλυτερο με τη ReadExisting. Νομιζω χρειαζομαι κατι να μπορω να το χρησιμοποιησω σε loop... Ευχαριστω παντως!
Kaka7 Δημοσ. 30 Απριλίου 2010 Δημοσ. 30 Απριλίου 2010 Γεια σου φίλε T-spoilerGR Για δοκίμασε λίγο τον παρακάτω κώδικα πρέπει να παίζει. > Sub DataReceived() [b]Dim k() as Char [/b] Try [b]k=myComPort.ReadExisting.toCharArray()[/b] [b]For i = 0 To k.Length - 1 RichTextBox1.Text = RichTextBox1.Text & k(i) & vbNewLine Next[/b] Catch ex As TimeoutException MessageBox.Show(ex.Message) End Try End Sub
T-spoilerGR Δημοσ. 30 Απριλίου 2010 Μέλος Δημοσ. 30 Απριλίου 2010 Φιλε Kaka7 σ'ευχαριστω. Τελικα το richTextBox ηταν αυτο που χρειαζομουν. Το "& vbNewLine" δε χρειαζεται γιατι μαλλον το richTextBox με καποιο τροπο χωριζει τους αριθμους.Με το textBox δε γινεται αυτο. Σας ευχαριστω πολυ παιδια.
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.