Autore Topic: Esempio 14 Form dentro Form  (Letto 482 volte)

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.244
  • Tonno verde
    • Mostra profilo
Esempio 14 Form dentro Form
« il: 31 Gennaio 2015, 21:14:12 »
Nel suggerimento (Tip) n° 14 si parla di form annidati con questo esempio:

Codice: gambas [Seleziona]
Dim hForm as MyDialog
Dim hSuperControl as MyForm

' Crea un dialogo
hForm = New MyDialog
' Inserisce un form in questo dialogo
' Nota che questo form riceve due parametri prima del contenitore
hSuperControl = New MyForm(param1, param2, mydialog)
'Muove e ridimensiona il form
hSuperControl.Move(8,8,128,64)

' Ricorda che: un form racchiuso in un altro continua ad essere un form e quindi osservatore di eventi di se stesso.


Malgrado abbia già usato form racchiuse in form questo esempio non sono proprio stato in grado di capirlo, c'è qualche anima pia che ha la voglia e la pazienza di spiegarmelo.
 :ciao:
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.244
  • Tonno verde
    • Mostra profilo
Re: Esempio 14 Form dentro Form
« Risposta #1 il: 01 Febbraio 2015, 16:21:52 »
Ho continuato a fare delle prove per cercare di mettere in pratica quanto “sostenuto” nell'esempio, ma senza risultati.
L'unica cosa che che ci assomiglia e funziona (funziona per modo di dire) rimane questa riportata, però non serve a nulla in quanto poi con una finestra invisibile e inservibile cosa ci fai.
Oppure sono io che proprio non riesco a capire cosa si vuol sostenere nel suggerimento?

Nella Main form:

Codice: gambas [Seleziona]
Public Sub Form_Open()

  Dim hFmn As FMain
  Dim hFrm1 As Form1
  Dim sPar1, sPar2 As String
  
  hFmn = New FMain
  sPar1 = "PIPPO"
  sPar2 = "PLUTO"
  
  hFrm1 = New Form1(sPar1, sPar2, hFmn)  

End


Nella Form1:

Codice: gambas [Seleziona]
Public Sub _new(sPar1 As String, sPar2 As String)

  Print sPar1, sPar2
  
End


:(
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.683
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: Esempio 14 Form dentro Form
« Risposta #2 il: 01 Febbraio 2015, 16:28:13 »
A questa linea qui:
Codice: gambas [Seleziona]

  hFrm1 = New Form1(sPar1, sPar2, hFmn)  

mi dà questo errore:
  Type mysmatch: wanted Control, got String instead
« 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 Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.244
  • Tonno verde
    • Mostra profilo
Re: Esempio 14 Form dentro Form
« Risposta #3 il: 01 Febbraio 2015, 19:31:39 »
Ti da questo errore perché probabilmente non hai inserito Public Sub _new(sPar1 As String, sPar2 As String) in form1.
O almeno credo.
 :ciao:
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro