Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it L'avatar di Cozza
    Registrato dal
    Jan 2001
    Messaggi
    467

    [VB.NET] Passare un form a una sub

    ciao a tutti

    c'è una cosa che facevo in VB6 che qui non riesco a fare

    ovvero , semplificando al massimo per arrivare al succo l'esempio è questo

    in un modulo definivo una funzione a cui passavo un form generico in quanto durante l'esecuzione potevo passargli uno qualsiasi dei form dell'applicazione:

    Public Sub MiaSub(ByVal frm As Form)
    frm.PictureBox1.Width = frm.PictureBox1.Width + 50
    End Sub

    la stessa cosa in vb.net non funziona:
    Module Module1
    Public Sub MiaSub(ByVal frm As Form)
    frm.PictureBox1.Width = frm.PictureBox1.Width + 50
    End Sub
    End Module

    funziona solo se gli passo il nome esatto del form altrimenti mi dice
    "PictureBox1" non è un membro di "System.Windows.Forms.Form".

    ma che senso ha a questo punto dovrei dichiarare una Sub per ogni form a cui decido di passarla :master:
    Ho mille libri sotto il letto non leggo più
    ho mille sogni in un cassetto non lo apro più
    parlo da solo e mi confondo e penso
    che in fondo sì sto bene così

  2. #2
    è forse chiedere troppo chiedervi di mettere nel titolo il linguaggio in cui state lavorando?
    Vascello fantasma dei mentecatti nonchè baronetto della scara corona alcolica, piccolo spuccello di pezza dislessico e ubriaco- Colui che ha modificato l'orribile scritta - Gran Evacuatore Mentecatto - Tristo Mietitore Mentecatto chi usa uTonter danneggia anche te

  3. #3
    Utente di HTML.it L'avatar di Cozza
    Registrato dal
    Jan 2001
    Messaggi
    467
    allora in pratica devi già avere un form con quegli oggetti dentro che ti sei definito tu

    nel mio caso Form2

    poi nel form che devi passare alla tua funzione

    togli

    Inherits System.Windows.Forms.Form
    e metti al suo posto
    Inherits WindowsApplication1.Form2

    e poi passi form2 alla tua funzione così

    Module Module1
    Public Sub Dividi(ByVal frm As Form2)
    frm.PictureBox1.Width = frm.PictureBox1.Width + 50
    End Sub
    End Module

    okok per stavolta mi son risposto da solo ma tra poco o domani romperò le balle con gli array di funzioni


    e cmq in 3 anni di forum non mi aveva mai cazziato nessuno :di56:
    Ho mille libri sotto il letto non leggo più
    ho mille sogni in un cassetto non lo apro più
    parlo da solo e mi confondo e penso
    che in fondo sì sto bene così

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.