Newsgroup: it.comp.lang.visual-basic
Titolo: Casella di testo: scrivere più righe?

In una Casella di testo con multilinea=true e scrollbars=3-both non riesco a 
scrivere più di una riga.
  Private Sub Form_Load()
 Dim f As Integer
 For f = 1 To 10
 Text1.Text = "ciao"
 Next f
 End Sub
La scritta "ciao" mi compare SOLO sulla prima riga della TextBox e non viene 
scritta 10 volte.
Non vorrei usare una RichTextBox (troppo potente, per adesso!) e quindi 
vorrei sapere se è possibile usare una TexBox per mostrare più linee di 
output diverse tra loro.
Grazie.
(G)

  Text1.Text = "ciao"
Ti rispondo con una domanda (anche se non si dovrebbe fare): che codice
scriveresti per sommare un valore ad una variabile piu' volte?
Dim f As Integer
dim Totale as integer
Totale = 0 ' <-- Inizializzazione
For f = 1 To 10
  Totale = 10
Next f
Che valore ti aspetti di trovare per Totale? E come correggeresti il
codice?
Bye by SixaM 8-]
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 codice?
Grazie per avermi risposto.
Nel tuo esempio il Totale sarà sempre e solo 10 per sommare si dovrebbe, 
credo, aggiungere all'interno del ciclo for...next 
q.sa
 del tipo:
tot=tot+totale
Oppure modificare il tuo precedente "Totale=10" in Totale = Totale + f
o sbaglio?
   Dim f As Integer
   dim Totale as integer
   Totale = 0
   For f = 1 To 10
   Totale = Totale + f
   Next f
(G) 

 (G)



Inanzitutto Text1.Text = "Ciao" non aggiunge (che si dice concatenzazione) 
ma ricarica il "ciao" per 10 volte, per concatenare stringhe si scrive cosi:
Text1.Text = Text1.Text & "Ciao" (Soluzione standard VB che ti consiglio)
oppure:
Text1.Text = Text1.Text  + "Ciao" (Soluzione dei vecchi Basic che dovrebbe 
accettare anche VB)
Tutta via così facendo aggiungerai la parola ma sempre sulla stessa riga, 
per avere piu righe entra in gioco la proprietà Text1.Multiline:
Se attivata la textbox puo contenere piu righe anche in fase di digitazione 
non solo da codice: Text1.Multiline = True
Se disattivata, (come di default in VB6) allora la textbox accetta un'unica 
riga, anche in fase di digitazione non solo da codice : Text1.Multiline = 
False
Quindi attivala o in fase di progettazione dalle proprietà del textbox, 
oppure da codice con Text1.Multiline = True
Per andare a capo da codice aggiungi alla tua stringa sempre Cr+Lf esempio 
Chr$(13) & Chr$(10)
Per andare a capo da digitazione nella textbox stessa in runtime basta dare 
invio
Ivan 

 CUT
Ti ringrazio veramente molto per la disponibilità, adesso comincio a capire 
qualcosa del VB.
Sei sempre molto gentile, grazie ancora.
(G)

 fatto! Ah, ricordati di far andare a capo la stringa con un bel VbCr...
Grazie per avermi aiutato, sei stato molto gentile
In effetti la stringa siffatta NON mi andava a capo e scriveva tutto su una 
riga! :-(
Ciao e grazie ancora.
(G)

Approfitto della tua cortesia per chiederti una informazione:
spesso, nei programmi Windows, la casella che mostra - come nel mio caso - 
un determinato elenco di dati ha la possibilità di ordinarli alfabeticamente 
cliccando la prima riga della casella stessa, tipicamente grigia.
E' questo un comando stand-alone del VB6 e facilmente implmentabile oppure 
si deve scrivere un codice di ordinamento?
Grazie.
(G) 


A parte che dovresti aprire un altro thread...
Ad ogni modo, se i dati li prelevi da una tabella di database, esiste 
una utilissima autocomposizione form accesso dati. Se selezioni lo stile 
  MSHFlexGrid potrai cliccare sulle colonne e ordinare i dati secondo la 
colonna scelta.
-- 
Emanuele Torrenti
http://torrenti.altervista.org
Per favore non mandatemi allegati in Word o PowerPoint.
Please, don't send me Word or PowerPoint attachments.
Si veda: Look at:
http://www.gnu.org/philosophy/no-word-attachments.html

 colonna scelta.
Bene, grazie per l'info.
Per adesso preferisco non pensarci: un passo alla volta....
Ciao.
(G)