[OFF] ORIENTACAO A OBJETO VB6

KERPLUNK 02/06/2011 18:57:08
#375734
Vejo direto o fórum e vejo que muita gente tem dificuldade de entender o conceito de objeto, mesmo no .NET... então resolvi fazer um exemplo prático de como funciona a orientação a objeto, usando, acreditem, VB6.
ESLEYSANCHES 02/06/2011 19:16:56
#375736
Muito SHOW de bola seu exemplo.
Envie ele para o site, qualquer coisa mande uma MP para os moderadores aqui como o TECLA que eles ajudam vc a fazer isso.

Flw abraços !!!
ANDPAG 03/06/2011 01:31:36
#375753
Realmente o VB6 pode ser programado orientado a objetos... Eu faço meus projetos orientado a objetos a uns 8 anos... inlcusive ate o formulario é instanciado como objeto com caracteristicas e métodos proprios...... ex:

Dentro do Form...:....


Option Explicit

[ô]************************** ATENCAO *******************************
[ô]ESTE FORM DEVERA SER INSTANCIADO E ACESSADO ATRAVES DA FUNCAO EDITAR()
[ô]**********************************************************************

Private pbIniciouCorretamente As Boolean

[ô]VARIAVEIS PARAMETRIZAVEIS
Private poConexao As ADODB.Connection
Private poObjetoAEditar As Object
Private poFormAEditar As Object
Private pbSomenteLeitura As Boolean
Private pbGravado As Boolean

[ô]VARIAVEIS DE RETORNO
Private pbConfirmou As Boolean
Private pbEditarObjetoNovamente As Boolean
Private vbAbriu As Boolean

[ô]DEMAIS VARIAVEIS
Private pbAlterouObjeto As Boolean

Public Function Editar(ByRef aoConexao As ADODB.Connection, _
Optional ByRef aoObjetoAEditar As Object, _
Optional ByVal abSomenteLeitura As Boolean = False, _
Optional ByRef abEditarObjetoNovamente As Boolean = False) As Boolean

pbIniciouCorretamente = Not pbIniciouCorretamente
pbEditarObjetoNovamente = abEditarObjetoNovamente

[ô]RECEBER PARAMETROS
[ô]**************************************************************
Set poConexao = aoConexao
Set poObjetoAEditar = aoObjetoAEditar
pbSomenteLeitura = abSomenteLeitura

[ô]CARREGAR E CONFIGURAR FORM
[ô]**************************************************************
Load Me

Me.Caption = [Ô]Cadastro de Cargos[Ô]

[ô]EXIBIR FORM MODAL
[ô]**************************************************************
Me.Show vbModal

[ô]RETORNAR VALORES
[ô]**************************************************************
Editar = pbConfirmou
abEditarObjetoNovamente = pbEditarObjetoNovamente
End Function

para instanciar o form voce pode fazer ja passando um objeto criado a partir de uma classe por exemplo um classe CCLIENTE onde contenha todas as regras de banco...

[ô]chamando o form dentro do click de um menu no form principal do projeto

dim voFrmSeuForm as FORM_SeuForm
dim voCliente as CCliente

set voCliente = new CCliente
set voFrmSeuForm = new FORM_SeuForm

voFrmSeuFOrm.Editar conexao,vocliente,,true

set voCliente = nothing
set voFrmSeuForm = nothing

[ô]Deixe o seu form sem ser MDIChild, valeu a todos abs
ANABON0106 03/06/2011 01:38:45
#375754
Legal!!! qnto mais leio os posts desse forum ... mais vejo que preciso camela muuuuuuuuiiiiiiiiitttttttooooooo no vb
SAMUKA 03/06/2011 09:57:26
#375763
Bacana ANDPAG, faço isso tb com alguns forms, isso traz vantagens na passagem de argumentos e no retorno de operação
SAMUKA 03/06/2011 10:30:09
#375766
Uma coisa pouco usada entre desenvolvedores no VB6 é as Interface (não estou falando de formularios e componentes).

http://www.macoratti.net/vb6_sher.htm (Um link do Macoratti sobre o assunto)

Pra quem não conhece, Interface permite que o VB trabalhe com Herança (um dos pilares da Orientação a Objetos)

Quem trabalhou com Documentos XML em VB6, provavelmente já ouviu sobre as classes IXMLDocument (entre outras). Essa classe é uma interface e isso está caracterizado pela letra I no inicio do nome da classe.

A UNICA forma de trabalhar com Padrões de Projeto em VB6 é através do uso de Interface

KERPLUNK, parabéns pelo tópico!!

Vamos aprofundar essa discussão, postando mais exemplos do que pode ser feito.
KERPLUNK 03/06/2011 14:13:16
#375780
Bom, dei uma incrementadinha nisso. Agora, cadastro completo de produtos e clientes, lançamento de vendas e relatório de vendas por período... um pouquinho mais e eu empacoto pra vender .

Quem quiser, dá uma olhada ae! Tá bem bacana mesmo
KERPLUNK 03/06/2011 14:29:40
#375781
Acho que vou escrever um artigo explicando passo a passo como funciona, a estrutura e tudo o mais pra galera, de repente, gravo até um vídeo mostrando como fazer um programinha similar...
ANDPAG 03/06/2011 15:31:12
#375787
No VB6 pode usar herança de [ô]interface[ô] de classe,,, eu uso muito esse recurso que é feito na [Ô]unha[Ô] talvez no macoratti tenha alguma coisa sobre o assunto,,,, inclusive ele é daqui da minha cidade... tb gosta muito de vb o cara heheh,,, mas qq coisa posso postar um exemplo de herança de classe no vb6,,, abs a todos....
KERPLUNK 03/06/2011 15:32:09
#375789
Opa! Se tiver isso coloca ae que eu posso implementar isso tb...
SAMUKA 03/06/2011 15:59:16
#375791
ANDPAG conheço Herança de Interface, de classe nunca vi. Inclusive li em algum lugar que só existia de Interface
Página 1 de 2 [17 registro(s)]
Tópico encerrado , respostas não são mais permitidas