CLASSE COM OBJETO FORM
Bom dia....
Estou com esta função em um modulo, ela funciona perfeitamente., o que eu desejo fazer é coloca-la em uma classe e compilar gerando assim uma dll de todas minhas funções,.. o proplema é esta função que não aceita tipo de objeto na classe. Como poderia funcionar na classe?
Ele retorna erro na (f as Form), pois ele não aceita que seja o nome do objeto, tentei mudar para object mais não consegui chamar a função.
Estou com esta função em um modulo, ela funciona perfeitamente., o que eu desejo fazer é coloca-la em uma classe e compilar gerando assim uma dll de todas minhas funções,.. o proplema é esta função que não aceita tipo de objeto na classe. Como poderia funcionar na classe?
Ele retorna erro na (f as Form), pois ele não aceita que seja o nome do objeto, tentei mudar para object mais não consegui chamar a função.
Public Sub CentraNaTela(f As Form)
With f
If f.WindowState = vbNormal Then
If f.MDIChild = True Then 'se for "filho" do principal
.Left = (Mdi_Capa.Width / 2) - (f.Width / 2)
.Top = ((Mdi_Capa.Height / 2) - (f.Height / 2)) - 300 'titlebar
Else
.Top = (Screen.Height - f.Height) / 2 'caso contrário,
.Left = (Screen.Width - f.Width) / 2 'centraliza na tela
End If
End If
End With
End Sub
Public Sub Resize_Form(ByRef MDI As Form, ByRef myForm As Form, vHeight As Integer, vWidth As Integer)
myForm.Width = vWidth
myForm.Height = vHeight
myForm.Left = (MDI.Width / 2) - (myForm.Width / 2)
myForm.Top = ((MDI.Height / 2) - (myForm.Height / 2)) - 300
myForm.Width = vWidth
myForm.Height = vHeight
End Sub
tem que ser as Object mesmo.
ai vc passa o form por parà ¢metro sem problemas...
O que aconteceu quando vc tento chamar a função colocando como as Object??
ai vc passa o form por parà ¢metro sem problemas...
Public Sub CentraNaTela(f As Object)
With f
If f.WindowState = vbNormal Then
If f.MDIChild = True Then 'se for "filho" do principal
.Left = (Mdi_Capa.Width / 2) - (f.Width / 2)
.Top = ((Mdi_Capa.Height / 2) - (f.Height / 2)) - 300 'titlebar
Else
.Top = (Screen.Height - f.Height) / 2 'caso contrário,
.Left = (Screen.Width - f.Width) / 2 'centraliza na tela
End If
End If
End With
End Sub
O que aconteceu quando vc tento chamar a função colocando como as Object??
você não consegue definir como "as object" no seu modulo ou qdo vc vai compilar a dll?
eu fiz assim aqui e funcionou normal...
eu fiz assim aqui e funcionou normal...
Public Sub CentraNaTela(f As Object)
With f
If f.WindowState = vbNormal Then
If f.MDIChild = True Then 'se for "filho" do principal
.Left = (Mdi_Capa.Width / 2) - (f.Width / 2)
.Top = ((Mdi_Capa.Height / 2) - (f.Height / 2)) - 300 'titlebar
Else
.Top = (Screen.Height - f.Height) / 2 'caso contrário,
.Left = (Screen.Width - f.Width) / 2 'centraliza na tela
End If
End If
End With
End Sub
como ficaria pra chamar a função, pois tentei da mesma forma que estava no modulo e da objeto requerido...
faço assim pra chamar a func.
centranatela me
ele até compila como object, mais não consegui chamar a função.
faço assim pra chamar a func.
centranatela me
ele até compila como object, mais não consegui chamar a função.
tenta passar o nome do form
centranatela nomeform
centranatela nomeform
Tópico encerrado , respostas não são mais permitidas