karl93 (Normal User)
Rookie
Messaggi: 47
Iscritto: 17/09/2011
|
Salve,
ho creato una matrice e visualizzato grazie al componente MSFlexGrid.
Ecco il codice:
Codice sorgente - presumibilmente VB.NET |
Option Explicit Dim i, j, righecolonne As Integer Dim matrice(1 To 10, 1 To 10) As Integer Private Sub Command1_Click() righecolonne = InputBox("inserire il numero colonne/righe" & vbCrLf & "(inserire valore minore di 10)", "inserimento dati ") For i = 1 To righecolonne For j = 1 To righecolonne matrice(i, j) = Val(InputBox("inserire valore dell'elemento" & CStr(i) & "," & CStr(j), "Caricamento matrice")) Next j Next i End Sub Private Sub Command2_Click() Label3.Caption = sommaprincipale End Sub Private Sub Command3_Click() Label4.Caption = sommasecondaria End Sub Private Function sommasecondaria() As Integer Dim somma, k As Integer somma = 0 k = righecolonne For i = 1 To righecolonne somma = somma + matrice(i, k) Next i sommasecondaria = somma End Function Private Sub Command4_Click() flex.FixedRows = 1 flex.FixedCols = 1 flex.Rows = righecolonne + 1 flex.Cols = righecolonne + 1 For i = 1 To righecolonne For j = 1 To righecolonne flex.Row = i flex.Col = j flex.CellFontBold = True flex.Text = matrice(i, j) Next j Next i End Sub Private Function sommaprincipale() As Integer Dim somma As Integer somma = 0 For i = 1 To righecolonne somma = somma + matrice(i, i) Next i sommaprincipale = somma End Function
|
Ora vorrei selezionare una casella e visualizzare il suo contenuto in una TextBox. Come risolvere?
|
|
nessuno (Normal User)
Guru^2
Messaggi: 6390
Iscritto: 03/01/2010
|
Codice sorgente - presumibilmente VB.NET |
Private Sub flex_Click() Text1.Text = flex.Text End Sub
|
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità. |
|
karl93 (Normal User)
Rookie
Messaggi: 47
Iscritto: 17/09/2011
|
Funziona molto bene. Grazie mille.
Se invece devo inserirlo in più Text. Ad esempio voglio che le righe/colonne siano 2 e i valori sono:
1.1 = 3
1.2 = 5
2.1 = 2
2.2 = 8
Quando clicco su una casella, tipo 1.1, compari nella Text1 il suo valore...se invece clicco il valore 2.1 voglio che questa compari nella Text2...quindi devo riuscire a gestire questo evento.
|
|
nessuno (Normal User)
Guru^2
Messaggi: 6390
Iscritto: 03/01/2010
|
Non ho capito bene ma se vuoi usare più textbox, crea un array di textbox e gestisci l'indice
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità. |
|
karl93 (Normal User)
Rookie
Messaggi: 47
Iscritto: 17/09/2011
|
Ora ti spiego il problema. Devo gestire un numero massimo di 25 auto...ogni auto ha un suo valore. Quindi ho pensato di gestirlo cn le matrici...sbaglio??? Perchè vorrei visualizzare il tutto grazie al componente MSFlexGrid. Dovrei gestire il fatto che ad esempio io inserisco 3...devo poter inserire il nome dell'auto(sempre tre nomi diversi) e 3 valori:
1 = 30421
2 = 30425
3 = 30428
Quindi non dovrei visualizzare 3 righe e 3 colonne...visto che non mi servono. Secondo te dovrei gestire con due vettori?
Tipo scrivendo così:
Codice sorgente - presumibilmente VB.NET |
Do N = InputBox("Quante macchine vuoi caricare?" & vbCrLf & _ "(Inserire un valore minore di 25)", "richiesta numero dati") Loop While N > 25 For i = 1 To N Numeri(i) = InputBox("Inserisci Numero Macchina", "Inserimento Dati") Valore(i) = InputBox("Inserisci Valore", "Inserimento Dati") Label1.Caption = Label1.Caption & Numeri(i) & " " Label4.Caption = Label4.Caption & Valore(i) & " " Next i
|
|
|
karl93 (Normal User)
Rookie
Messaggi: 47
Iscritto: 17/09/2011
|
Come ho scritto io...visualizzo il loro contenuto in due Label, ma a me dopo serve che posso cliccare su una casella e visualizzarla in una Text. Ecco perchè stavo gestendo con le matrici. Oppure è possibile visualizzare quei vettori nel componente MSFlexGrid???
|
|
karl93 (Normal User)
Rookie
Messaggi: 47
Iscritto: 17/09/2011
|
In questo modo visualizzo i valori(valore auto) e i numeri(nome auto):
Codice sorgente - presumibilmente VB.NET |
Do N = InputBox("Quante macchine vuoi caricare?" & vbCrLf & _ "(Inserire un valore minore di 25)", "richiesta numero dati") Loop While N > 25 For i = 1 To N Numeri(i) = InputBox("Inserisci Numero Macchina", "Inserimento Dati") Valore(i) = InputBox("Inserisci Valore", "Inserimento Dati") Next i Flex1.Cols = N + 1 For i = 1 To N Flex1.Col = i Flex1.CellFontBold = True Flex1.Text = Numeri(i) Next i Flex.Cols = N + 1 For i = 1 To N Flex.Col = i Flex.CellFontBold = True Flex.Text = Valore(i) Next i
|
Se invece voglio visualizzarli in un solo componente MSFlexGrid ???
Ultima modifica effettuata da karl93 il 04/11/2011 alle 12:52 |
|