1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

VB6.0 me.close

Discussão em 'Programação' iniciada por Zero_Cool_PT, 9 de Março de 2008. (Respostas: 5; Visualizações: 1010)

  1. Zero_Cool_PT

    Zero_Cool_PT What is folding?

    Boas pessoal. Existe algum comando que nos feche as form's todas? É que tar a criar um botão para cada Form fazer unload é um bocado chato...Obrigado desde já
     
  2. balute

    balute Power Member

    Código:
    End
    Para terminar o programa.
    Serve?
     
  3. Zero_Cool_PT

    Zero_Cool_PT What is folding?

    Perfeitamente :D
    Brigadão
     
  4. Kayvlim

    Kayvlim Undefined Moderator
    Staff Member

    Nunca!!!
    Faz os unloads todos. NUNCA uses o "End". É a pior forma de terminar um programa.
    Depois explico porquê :x
     
  5. balute

    balute Power Member

    lol, apenas dei a solução mais simples e bruta para fazer o que ele pretende. :P

    E, num programa simples como o dele, é quase impossível o End dar problemas...
     
  6. Kayvlim

    Kayvlim Undefined Moderator
    Staff Member

    Eu percebo isso, e em tempos também usei o End. No entanto, é mesmo a pior forma de terminar um programa.
    É simples: o Unload destrói todos os objectos da memória, e o End "corta" a execução do programa sem a limpar, como se fosses ao gestor de tarefas e fizesses "Terminar Tarefa".
    Além disso, o End tem outro problema: eventos como o QueryUnload, Unload ou Terminate não são chamados.
    Se fizeres subclassing no teu programa, é a mistura perfeita para um crash.

    Uma boa forma de fazer as coisas é esta:
    Código:
    Option Explicit
    
    Private Sub Command1_Click()
        Dim CadaForm As Form
       
       For Each CadaForm In Forms
            If Not CadaForm.Name = Me.Name Then
                Unload CadaForm
            End If
       Next
        
        Unload Me
    End Sub
    
    Private Sub Form_Load()
        
        Form1.Show
        Form2.Show
        Form3.Show
        Form4.Show
        
    End Sub
    
    (um projecto com 4 forms, e em qualquer um deles, um command1 e este código)
     

Partilhar esta Página