Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    [VB.NET]Errore: Resize & Form.activeform

    Allora premetto che sto passando solo in questi giorni dal vb6 al dotnet, quindi magari la cosa e una vera cavolata... ma a me risulta assurda:

    Sto sviluppando un semplice tool che prevede la presenza di una pagina web, naturalmente se faccio un ridimensionamento la pagina web deve rimanere proporzionata a tutto il form quindi ho butta giu queste poche righe:

    codice:
        Private Sub Form1_Resize(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Resize
    
            Web.Height = Form.ActiveForm.Height - 28
            Web.Width = Form1.ActiveForm.Width - 8
    
        End Sub
    Ora la cosa buffa e che questo script funziona... ma solo quando le dimensioni di partenza del form (intendo le dimensioni che vengono usate dal form quando viene caricato) sono 300x300 (ovvere quelle default settate da visual studio .net), se cambio minimamente queste impostazioni all'avvio del programma mi spunta questo Orrore:

    codice:
    Eccezione non gestita di tipo "System.NullReferenceException" in POL 2.exe
    
    Informazioni aggiuntive: Riferimento a un oggetto non impostato su un'istanza di oggetto.
    Come ricompensa garantisco un'abbonamento a playboy per un anno a chi me lo risolve

  2. #2
    codice:
        
    Private Sub Form1_Resize(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Resize
    
            Web.Height = Form .ActiveForm.Height - 28
            Web.Width = Form1.ActiveForm.Width - 8
    
        End Sub

    Quello in rosso probabilmente è un errore credo che si debba chiamare Form1


    Ciao!

  3. #3
    A vabbe si quello e un errore di battitura,cmq non e quello l'errore... purtroppo

  4. #4
    Basta che usi:
    codice:
    Private Sub Form1_Resize(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Resize
            Web.Height = me.height - 28
            Web.Width = me.Width - 8
        End Sub

  5. #5
    Ok passami il tuo indirizzo che ti arriva immediatamente l'abbonamento

    Ma come mai nel .net bisogna usare l'oggetto Me? e perche mi dava quell'errore?

  6. #6
    Ma come mai nel .net bisogna usare l'oggetto Me?
    "Me rappresenta il form in cui stai scrivendo il codice"

    e perche mi dava quell'errore?
    ActiveForm restituisce il form attivo per l'applicazione. Quindi ActiveForm.Width restituisce la larghezza del form attivo, forse ti dava quell'errore perché nel momento di avvio del programma nessun form è attivo e quindi width e Height non sono inizializzate...
    Ok passami il tuo indirizzo che ti arriva immediatamente l'abbonamento
    Forse qualche persona del gentil sesso non ha risposto perché hai offerto un abbonamento a playboy, magari la prossima volta offri qualcosa anche a loro

  7. #7
    Ok... la prossima volta mettero pure un abbonamento a novella 2000 a scelta

    Cmq grazie ora e tutto chiaro

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.