Autore Topic: Funzione che ritorni un ELEMENTO di columnview  (Letto 368 volte)

Offline allegfede

  • Gran Maestro dei Gamberi
  • *****
  • Post: 738
    • Mostra profilo
Funzione che ritorni un ELEMENTO di columnview
« il: 21 Luglio 2014, 19:48:16 »
come da titolo mi sarebbe piaciuto fare una funzione che ritornasse (da una stringa passata come input) un elemento della columnview da aggiungere nel codice principale.

Codice: [Seleziona]
public sub qualcosa()
     ..............

    For i = 0 To risp.Count - 1
    If risp[i] Like "U[0-9]*" Then
      indice = ExtractClipIndex(risp[i])
      In_point = ExtractClipInPoint(risp[i])
      Out_Point = ExtractClipOutPoint(risp[i])
      Clip_Lenght = ExtractClipLenght(risp[i])
      Clip_Name = ExtractClipName(risp[i])
     
      ColumnView_Clips.Add(indice, In_point)
      ColumnView_Clips[indice][1] = Out_Point
      ColumnView_Clips[indice][2] = Clip_Lenght
      ColumnView_Clips[indice][3] = Clip_Name
    Endif
  Next

End

per evitare di fare 4 volte gli stessi confronti avrei preferito fare una cosa del genere:

Codice: [Seleziona]
public sub qualcosa()
dim Risposta as columnview.item
     ..............

    For i = 0 To risp.Count - 1
    If risp[i] Like "U[0-9]*" Then
      Risposta=ExtractClipInfo(risp[i])
      ColumnView_Clips.Add(Risposta)
    Endif
  Next

End

Public Function ExtractClipInfo(StringaDiRisposta As String) As ColumnView
   
   ......
   
End
se corri, morirai stanco (motto degli sniper)

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.266
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: Funzione che ritorni un ELEMENTO di columnview
« Risposta #1 il: 22 Luglio 2014, 09:02:46 »
Codice: [Seleziona]
dim Risposta as columnview.item
     ..............
End

Public Function ExtractClipInfo(StringaDiRisposta As String) As ColumnView
   ......
End
Noto innanzitutto che la funzione ritorna una ColumnView, ma la variabile Risposta sarebbe soltanto una proprietà di quell'oggetto.
Ad ogni modo a me non è molto chiaro quel che cerchi.
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline sotema

  • Maestro Gambero
  • ****
  • Post: 467
    • Mostra profilo
Re: Funzione che ritorni un ELEMENTO di columnview
« Risposta #2 il: 22 Luglio 2014, 09:18:22 »
Se interpreto correttamente il pensiero (ermetico) di allegfede, vuole estrarre da una columnview una riga da inserire in una seconda columnview.
in questo caso la risposta dovrebbe consistere una chiave della columnview di origine, dalla quale determinare la riga da esportare.
Prova a vedere l'esempio allegato, da adattare alle tue esigenze.
L'uomo ha inventato la bomba atomica, ma nessun topo al mondo costruirebbe una trappola per topi.
Albert Einstein

Offline allegfede

  • Gran Maestro dei Gamberi
  • *****
  • Post: 738
    • Mostra profilo
Re: Funzione che ritorni un ELEMENTO di columnview
« Risposta #3 il: 22 Luglio 2014, 14:15:16 »
scusate il bisticcio .....

vorrei processare una stringa ed infilarla nei vari pezzi di un oggetto columnview.item (una riga multicolonna), da ritornare alla procedura principale che la inserisce (nuova riga) nella collezione della columnview :D

... il problema e' che gambas non ha l'oggetto columnview.item :D


.... sto' pensando di ritornare un vettore di stringhe :D
se corri, morirai stanco (motto degli sniper)

Offline sotema

  • Maestro Gambero
  • ****
  • Post: 467
    • Mostra profilo
Re: Funzione che ritorni un ELEMENTO di columnview
« Risposta #4 il: 22 Luglio 2014, 14:20:41 »
L'uomo ha inventato la bomba atomica, ma nessun topo al mondo costruirebbe una trappola per topi.
Albert Einstein

Offline allegfede

  • Gran Maestro dei Gamberi
  • *****
  • Post: 738
    • Mostra profilo
Re: Funzione che ritorni un ELEMENTO di columnview
« Risposta #5 il: 24 Luglio 2014, 17:22:34 »
interessante ...... solo QT?

pero' ho risolto con un vettore .... passo una stringa alla funzione.
questa elabora la stringa, la spitta e ritorna un vettore

nella procedura chiamante assegno alla nuova riga della columnview il contenuto del vettore ritornato :D
se corri, morirai stanco (motto degli sniper)