You are on page 1of 8

10/09/2015

CadastrodeumConsultrioemWindowsForms,comC#eSQLServerParte3

Pesquisar

DesenvolvimentoC#

CadastrodeumConsultrioemWindowsForms,com
C#eSQLServerParte3
Nesta3partedenossoartigo,iremosnosaprofundarnoconceitodeHeranadaProgramaoOrientada
ObjetoscriandoumFormulrioBaseeaplicandoasconfiguraesnecessriasparanele.
porWellingtonBalbodeCamargo

Olpessoal,continuamosnossasriedeartigoscriandoaplicaessimplesemWindowsForms
LOGIN
usandoalinguagemC#eobancodedadosSQLServer.
Nestaparteiremosfinalizarnossapadronizaonosistemaaplicandoalgumasconfiguraes
personalizadasaoformulrioprincipal.FalaremostambmsobreosconceitosdeProgramao
OrientadaObjetos.Acompanhem:
Deincio,vamosalterarasimagensdosmenusdoformprincipal.Paraisso,abraoform,cliquenos
botesdomenu,senotiverdadonomeaeles,aproveiteejdonomedeMdicos,Pacientese
Consultas.AgorapesquisenoGoogleImagensasrespectivasimagensparacadaboto,salveemseu
pc,cliqueemcadabotoe,nomenuPropriedades,cliquenobotoaoladodoatributoImageeclique
emImport,comomostraaimagemabaixo:

http://www.linhadecodigo.com.br/artigo/2814/cadastrodeumconsultorioemwindowsformscomcsharpesqlserverparte3.aspx

1/8

10/09/2015

CadastrodeumConsultrioemWindowsForms,comC#eSQLServerParte3

Usedeprefernciaimagenscomtamanhomximode48x48.Apsinserirasimagenscliqueno
atributoImageScalingeodeixecomoNoneparaaimagemficarcomotamanhoreal.Seaimagem
noficartransparente,salterarapropriedadeImageTransparentColorparaacordasuaimagem.
Podemosalterarnossomenudenavegaoparaquefique,porexemplo,esquerdadenossajanela
enoemcima.PormeiodapropriedadeDockpodemosfazerisso,comomostraaimagemabaixo:

Ok,nomeuexemplovoudeixlonotopomesmo,maissepreferirpodealterarapropriedadeDock
comomostrouaimagem.
Aprincpio,nossoformulrioestpronto.Comcadastrosefuncionalidadessimples,nosdeuuma
boavisodecomofciltrabalharcomoscontrolesdoVisualStudio.

http://www.linhadecodigo.com.br/artigo/2814/cadastrodeumconsultorioemwindowsformscomcsharpesqlserverparte3.aspx

2/8

10/09/2015

CadastrodeumConsultrioemWindowsForms,comC#eSQLServerParte3

Agoraimagineoseguintecenrio:umaaplicaodessafeitaparaavidarealonde,nocadastro
pacientes,noso5nem10nem100esim1000registros.

Comoficariaseprecisarmosnavegarnoregistro999,porexemplo?Iriamosdeumemum?Ficaria
complicado,concordam?Porissodigoqueatomomentomontamosumsistemaomaissimples
possvel.
Apartirdeagorairemosmudarnossofocoesimularumaaplicaodeverdade,paraumpotencial
cliente,utilizandoalgunsconceitosdaProgramaoOrientadaObjetos,comoaHerana.
DeformasimplistaoconceitodeHeranasignificaqueumaoumaisclassesfilhasherdamatributose
mtodosdaclassepai(conhecidatambmcomoclassebase).Aheranausadacomaintenode
reaproveitarocdigoeassimgarantirumaaltaprodutividadeemnossosistema.
VamostrabalhartambmemnossosistemacomoconceitodeParametrizao,queoconceitode
implementardetalheseparmetrosaosistemadeacordocomasnecesssidadesdocliente.Seguindo
esteconceito,noteremosmaisumformulriocomoodePacientes,comosbotesavanare
retrocederosregistros,poisquandoabrirmosoformdePacientes,noqueremosvertodosos
PacientesesimverdeterminadoPaciente.
Serfeitoassimemtodososformulrios,pormeiodoconceitodeHerana.Teremostambmum
formulriodepesquisa.Comecemosentonossoformulriobaseprincipalqueseroformulriopai:
CliqueemAdd>WindowsForm,donomedefrmBaseecliqueemOK.
Sergeradonossoformulrio,cliquenele,abraajanelaProperties(F4)ealtereasseguintes
propriedades:
http://www.linhadecodigo.com.br/artigo/2814/cadastrodeumconsultorioemwindowsformscomcsharpesqlserverparte3.aspx

3/8

10/09/2015

CadastrodeumConsultrioemWindowsForms,comC#eSQLServerParte3

StartPositioncoloqueCenterScreenparaqueoformabranomeiodatela
MaximizeBoxfalse
MinimizeBoxfalseparaquesapareaobotodefecharnoform
KeyPreviewtrue,paraativarousodotecladonoseventosdoform
FormBorderStylealtereparaFixedDialogparaqueoformnopossaserredimensionado
Agoravamosinseriroscontrolesqueseropadresnosdemaisforms.ArrasteumaToolStripde
nossaToolboxparaoformeinsira4botes,1separadoremais1boto,nessaordemreferentesaos
botesNovo,Salvar,Excluir,LocalizareFecharconformemostraaimagemabaixo:

AltereapropriedadeDisplayStyleparaImageandTextdosbotes,apropriedadeImageScaling
paraNoneeinsiraimagensparaosbotesreferentescomofizemosnoformanterior.Alteretambm
apropriedadeDesigndosbotesparapodermosidentificlosmaisfacilmentequandoformosuslos
naprogramao.NaordemaltereparabtnNovo,btnSalvar,btnExcluir,btnLocalizarebtnFechar.
AdicioneocontroleStatusStripaseuform,neleadicioneumStatusStripLabel,donomede
lblMensagemedeixeapropriedadeTextembrancoparaquepossamosconfigurarviacdigouma
mensagemaousurioquandoelerealizardeterminadaao.
CliquecomobotodireitonoseuformecliqueemViewCodeousimplesmenteaperteF7paraira
pginadecdigos.Nela,vamoscriarumenumerador,comositensInserindo,NavegandoeEditando,
ecriaremosumavarivelprivadadesteenumeradorparasabermosqualostatusdosistema,sepor
exemploousurioestiverinserindo,devemosdesabilitarobotodeexcluir,ouquandoestiver
localizando,devemosdesabilitarobotodesalvar.
Destaformaestaremosotimizandonossocdigoeevitandoerrosdousurio.Aimagemabaixo
mostranossocdigo:

http://www.linhadecodigo.com.br/artigo/2814/cadastrodeumconsultorioemwindowsformscomcsharpesqlserverparte3.aspx

4/8

10/09/2015

CadastrodeumConsultrioemWindowsForms,comC#eSQLServerParte3

Vamosvoltaraonossoform,nomodovisualeimplementarocdigoparaobotoFechar,comoparte
denossoexemplo.PrimeiroddoiscliquesemcimadobotodefecharechameomtodoClose().
Depois,volteaoform,abraajaneladepropriedadesdomesmo,cliquenosEventos,selecioneo
eventoKeyDown,ddoiscliquesneleeinsiraocdigoabaixoparaqueoformsefecheaoapertar
ESC.

UsandoesseconceitodeHeranaemnossosistema,sutilizaremosestecdigoacimaapenasuma
vezeosdemaisherdaroasfuncionalidadesdoformulriobase,oquemelhoranossodesempenhoe
temosfacilidadeseprecisarmosdarmanuteno.
Naprximapartedenossoartigo,iremoscontinuaracodificaodenossoformulriobase
implementandoosmtodosqueiremosusarnaheranadomesmo.
Confiranoprximoartigo!
CrditosLucianoPimenta,quefezasvdeoaulaseaoPortalLinhadeCdigo,porondepude
baixlas,estudlaseposteriormentefazeresteartigo.
Quaisquerdvidas,estoudisposio.
http://www.linhadecodigo.com.br/artigo/2814/cadastrodeumconsultorioemwindowsformscomcsharpesqlserverparte3.aspx

5/8

10/09/2015

CadastrodeumConsultrioemWindowsForms,comC#eSQLServerParte3

Atoprximoartigo!

WellingtonBalbodeCamargoDesenvolvedorWeb/Desktopem.NET,compouc
omaisde1anodeexperincianarea.Cursandoo4SemestredeAnlisede
Sistemas,atualmenteestudaparamelhorarosconhecimentosemSQLServere
ASP.NET,buscandoemumfuturoprximoascertificaesMicrosoftnessasre
as.Mantmumblogcomdicaseartigosparainiciantesem.NETnoendereohttp://programan
dodotnet.wordpress.comenashorasvagasprocuraajudareaprendercomopessoaldoFrum
daMSDN.AtualmenteeditordeartigosdaLinhadeCdigo.

Leiatambm
ComocriarbotesemjogosSFML.NET
C#

CarregandoedesenhandospritescomSFML.NET
C#

SFML.NET:IntroduoaodesenvolvimentodejogoscomC#
C#

UniversalApps:Compartilhandorecursosentreprojetos
C#

DrageDropdearquivosemWPF
WPF

Publicidade

REVISTASDEVMEDIA

http://www.linhadecodigo.com.br/artigo/2814/cadastrodeumconsultorioemwindowsformscomcsharpesqlserverparte3.aspx

6/8

10/09/2015

CadastrodeumConsultrioemWindowsForms,comC#eSQLServerParte3

.netMag124

Easy.netmag42
VERTODAS

TOP10ARTIGOS

ASSINE

TOP10AUTORES

ComandosbsicosemSQLinsert,
update,deleteeselect

HTMLBsico

MenuemCSSMenudropdownhorizontal
comHTML5eCSS3

Excel:Comoverificarseexistevalores
duplicados

CdigoparabackgroundHTMLeCSS

Criandoumsistemadecadastroelogin
comPHPeMySql

SINTEGRAOrientaesGerais

FormatodosregistrosdoSintegra

CopiandodadoscomoRobocopy

10

SQL:UtilizandooOperadorUNIONe
UNIONALL
VERTODOS

Anuncie | FaleConosco | Publique


http://www.linhadecodigo.com.br/artigo/2814/cadastrodeumconsultorioemwindowsformscomcsharpesqlserverparte3.aspx

7/8

10/09/2015

CadastrodeumConsultrioemWindowsForms,comC#eSQLServerParte3

LinhadeCdigo

Copyright2015todososdireitosreservadosparaWeb03

http://www.linhadecodigo.com.br/artigo/2814/cadastrodeumconsultorioemwindowsformscomcsharpesqlserverparte3.aspx

8/8

You might also like