Beruflich Dokumente
Kultur Dokumente
* M e n u - Microsoft V i s u a l S t u d i o B B B
j Objetivo::
j -Crearclases - Mtodos de una clase - Crear una instancia de clase - Probar una Clase - Ejemplos de Windows Forms Applications
C R U F O EDITORIAL
Megabyte
r ===
s
*SS-
2L
cdigo y d i g i t a l o s i g u i e n t e : mtodos, y Public Class Forml Sub Forml^Load...
( lases e n V i s u a l B a s i c
l a clase q u e d e f i n e u n objeto tiene s u s propias propiedades, esta clase. A l g u n o s m i e m b r o s d e u n a clase s o n p r i v a d o s , es d e c i r p u e d e n ser a l c a n z a d o s i d a m e n t e p o r cdigo d e n t r o d e l a c l a s e . P u e d e s o c u l t a r a m i e m b r o s e n u n a c l a s e declarndolos c o m o p r i v a d o s , o p u e d e s e x p o n e r l o s declarndolos c o m o pblicos. P u e d e s tambin p e r m i t i r e l a c c e s o a u n a p r o p i e d a d s i n e v i t a r q u e e l p r o g r a m a c a m b i e s u v a l o r declarndolo c o m o d e slo l e c t u r a . Ejemplo: Class Prvate Prvate Public CuentaBancaria NumeroCuenta CuentaBalance Sub As As String Decimal e v e n t o s ( a v e c e s l l a m a d o s m i e m b r o s ) q u e s o n p a s a d o s a t o d a s las i n s t a n c i a s d e
Prvate
End Sub
End Class
EES*
fli
End Public
i
End
Sub Property BalanceQ As Decimal L a d e s v e n t a j a d e c r e a r c l a s e s d e e s t a m a n e r a , e s q u e estn s o l a m e n t e d i s p o n i b l e s d e n t r o del p r o y e c t o d o n d e las creaste. S i deseas c o m p a r t i r u n a clase c o n o t r o s p r o y e c t o s , tendrs q u e c o l o c a r l a e n u n m d u l o d e c l a s e
ReadOnly Get
CuentaBalance Mdulo d e Clases U n m d u l o d e c l a s e e s u n a r c h i v o s e p a r a d o d e cdigo q u e c o n t i e n e u n a o m s c l a s e s y p u e d e s e r r e u t i l i z a d o e n o t r o s p r o y e c t o s . L o s mdulos d e l a c l a s e s e p u e d e n c r e a r d e d o s f o r m a s : c o m o m d u l o a g r e g a d o a u n a aplicacin d e W i n d o w s de u n p r o y e c t o , o c o m o u n a biblioteca d e clase independiente del p r o y e c t o . Para crear u n a biblioteca d e clase d e u n proyecto, realiza l o siguiente: 1. E n e l men F i l e , s e l e c c i o n a N e w P r o j e c t .
Crear
clases
172
sSSSBB
*g
Captulo IV: Visual B a s i c 2008 4. E nel E x p l o r a d o r d eSoluciones, d ac C a m b i a r n o m b r e y coloca S u m i n i s t r o . v b -Microsoft Visual Studio
DOS
fiS?
1 5 > s u m i n i s t r o
[.NETFramewor_k3.5
jT ti
Test
Analyze
3
Empty Project My Templares
a
Windows Service WPF Custom WPF User Windows Control Library Control Library Forms Cont,..
J
; Ready " Ln<t "
:
"
Coll
"
C h1
6 . E n e l men f i l e , s e l e c c i o n a S a v e a l l . Studio
Data Tpos Test Anayze
Campos y procedimientos d e propiedades L o s c a m p o s s o n r e a l m e n t e v a r i a b l e s pblicas d e n t r o d e u n a c l a s e , l a s c u a l e s p u e d e n s e r e s t a b l e c i d a s o ledas f u e r a d e l a c l a s e . S o n tiles p a r a l a s p r o p i e d a d e s que n o necesitan ser validadas. P a r a a g r e g a r u n c a m p o a u n a c l a s e , dgita e l s i g u i e n t e cdigo:
BHf ^ ,
vb
Solution Explorer
i ?.
a
z3i<
C l a s s
G8 'i
i O e c l a r a t # Class-j J suministro M M y P r o j e c t
j
L
: P u b l i c
C l a s s
Public situ As
string
B End
1
LiL
' Ready
:
Classl.vb File P r o p e r t i e s . J ,
2J
E n l a m a y o r a d e c a s o s desears u t i l i z a r u n p r o c e d i m i e n t o d e l a p r o p i e d a d para agregar u n ap r o p i e d a d a u n aclase. L o s p r o c e d i m i e n t o s d e l a propiedad t i e n e n t r e s p o r c i o n e s : u n a declaracin d e u n a v a r i a b l e p r i v a d a p a r a a l m a c e n a r c ! valor de l apropiedad; u n procedimiento G E T que expone e lvalor; y u n procedimiento S E T que fija el valor.
S S S S
Imm
Por ejemplo:
w [%
Prvate Public Get ame = nombre End Get Sct(ByVal valu As String), nombre As Property String String NameQ As
suministro
i j ( D e c l a r a t i o n s )
End
Property
L a p r i m e r a lnea d e c d i g o d e c l a r a
como privada
la variable
tipo
e l valor de lapropiedad. E l
ocedimiento delapropiedad empieza con lapropiedad Public y termina E l p r o c e d i m i e n t o G E T c o n t i e n e e l cdigo q u e v a a s e r e j e c u t a d o ando riable leas el valor, p o r ejemplo si lees la propiedad en la rsona.descripcin, e l cdigo t e retornara e l v a l o r a l m a c e n a d o Descsuministro. u n valor pasado como
Public Property primercodigo() As String Get p r i m e r c o d i g o = cdigo End Get S e t ( B y V a l valu A s S t r i n g ) cdigo = valu End S e t End P r o p e r t y P'>lic P r o p e r t y p r i m e r n o m b r e ( A s S t r i n g Get priiriernombre nonbre .End Get S e t ( B y V a l valu A s S t r i n g ) n o m b r e = valu End S e t End P r o p e r t y Public Property primeradescripcion() As String Get p r i r o e r a d e s c r i p c i o n = descripcin End Get S e t ( B y V a l valu A s S t r i n g ) descripcin = valu End S e t Propertv
"3
Para agregar propiedades a t u s clases: Abre;clproyecto Suministro. E n e l E x p l o r a d o r d e Soluciones, selecciona S u m i n i s t r o . v b , y d adoble clic I p a r a V e r Cdigo. '
<j
End
A d i c i o n a l a s i g u i e n t e declaracin d e cdigo
5 . E n e l men f i l e ,
selecciona S a v e A l l .
JjrS.-^
"55-
Propiedades R e a d O n l y y W r i t e O n l y A l g u n a s propiedades s o n establecidas u n a sola v e z y n o p u e d e n ser cambiadas d u r a n t e l a ejecucin d e l p r o g r a m a . L a palabra clave r e a d O n l y se utiliza para especificar q u e u n v a l o r d e p r o p i e d a d p u e d e s e r ledo p e r o n o s e r m o d i f i c a d o . S i i n t e n t a s a s i g n a r u n v a l o r a u n a p r o p i e d a d r e a d O n l y , ocurrir u n e r r o r e n e l e d i t o r d e cdigo. Prvate IDNume As Property Integer
-
A d i c i o n a l o s s i g u i e n t e s p r o c e d i m i e n t o s d e p r o p i e d a d e s d e b a j o d e l a declaracin:
ReadOnly Get
ID() As
Integer
As
String
valu As
Mtodos d e u n a c l a s e
L o s mtodos d e u n a c l a s e s o n p r o c e d i m i e n t o s o f u n c i o n e s d e c l a r a d o s d e n t r o de l a clase.
E n l a clase s u m i n i s t r o , puedes agregar d o s propiedades: u n a propiedad de W r i t e O n l y C a l c u l a t v q u e representa e l tiempo de vida, y u n a propiedad de R e a d O n l y t v q u e d e v u e l v e u n v a l o r c a l c u l a n d o l a d i f e r e n c i a e n t r e e l ao a c t u a l y e l ao d e s u adquisicin! Para adicionar las propiedades R e a d O n l y y W r i t e O n l y a t u clase adiciona
Public
Sub
RecalcularQ
CuentadeBalance(NumCuenta
As Integer)
As
Double
flg
"CV
7 .
End
Function
SS55
''iBMammmmmmmmmmmmmmmmmmmmmammmmmmUm
F o r m l . v b * | ' Forml.vb [ D e d a n f ' Sumnistro.vb* j ^strt Page | IJSuministro R e a d O n l y Get ' t i e m p o v i d a = = My. Computer .d o c k . P r o p e r t y ^ : i(Declarations) A s I n t e g e r
tiertipovida ()
calculatv (ByVal
ao As Integer)
As
Integer - ao
L o c a l T i t g :
= My.Computer.Clock.LocalTime.Year
t i e m p o v i d a End G e t
c a l c u l a t i e m p o v i d a ( t v )
P r o p e r t y
P a r a a d i c i o n a r u n mtodo a u n a c l a s e , r e a l i z a l o s i g u i e n t e : I. ' Abre e l proyecto s u m i n i s t r o I n el Explorador de Soluciones, selecciona s u m i n i s t r o . v b , y luego e nel men v e r s e l e c c i o n a v e r c d i g o . Dim AButton As New . A g r e g a e l s i g u i e n t e cdigo:
Suministro.vb* i "sta -t F a j e "tiempovida Class Suministro deta_descripcion() < > "" Then = nombre "" descripcin As S t r i n g
C r e a r u n a instancia d e clase
P a r a c r e a r u n a i n s t a n c i a d e u n a c l a s e p u e d e s t r a b a j a r c o n e l s i g u i e n t e cdigo: Button
lornil'b*
>oiml.vb[Desgp
C r e a r u n proyecto d e prueba para l a clase Para ello, realiza lo siguiente: 1. A b r e e l p r o y e c t o S u m i n i s t r o . 2. E n e l men F i l e , s e l e c c i o n a a d d , l u e g o s e l e c c i o n a N e w P r o y e c t . . . ^ s u m i n i s t r o - MicrosoftV i
File lEdit View
:
'.Suministro Public
Public If
Function
descripcin deta
descripcin
Else deta_descripcion End I f End Function Function calculatiempovida(ByVal ao As Integer) ao i = My.Computer.Clock.LocalTime.Year = nombre
Pr jject
Build Ctrl+N
Deb
,\] , j . j Z _J
Shift+Alt+N
Prvate
Ctrl+O Shift+Alt+O
4.
M o d i f i c a e l cdigo e n l a p r o p i e d a d t v p a r a u s a r u n a funcin p r i v a d a .
1;
IssssT
S o l u t i o n Explorer - ProbarSumnis... P ?
f^ Solution 'suminisl
Build
:
oMPlProbarSunrl
I B i . 3 My Proje flU F o r m l . v ,_5 suministro H a y My Proje y Suministi
Rebuild
.-.Si
6. S e m u e s t r a e l c u a d r o d e dilogo p a r a a d i c i o n a r r e f e r e n c i a s . E n e l T a b Proyects, selecciona S u m i n i s t r o y luego d a clic e n O K . 4. E n e l E x p l o r a d o r d eSoluciones, selecciona el proyecto P r o b a r S u m i n i s t r o , d a c l i c d e r e c h o y s e l e c c i o n a E s t a b l e c e r c o m o p r o y e c t o d e i n i c i o (Set as StartUp project).
i S o l u t i o n E x p l o r e r - P r o b a r S u m n i s . . .
A d d
R e f e r e n c e
M
B
JCOM
Di'ivisai'sbjdio 2 0 0 8 \ s u m i n i s t r o \ s u m i n i s t r o
13
0
My Pro Forml
j i sumnistr
2Ml My Pro j g Sumini:
Vi
e n e l f o r m u l a r i o p a r a a b r i r e l e d i t o r d e cdigo, y d i g i t a l o
v1
Debug
As
suministro.suministro
cuate* '
.ssss
ttmnmmmmmmmmmmmmmmm
Nota que al momento que estas digitando, se. muestrajtna lista que contiene a todos los miembros de la clase suministro. Puesto que fue agregado como referencia.'
5 . E n e l e v e n t o B u t t o n 2 _ C l i c k , a g r e g a e l . s i g u i e n t e cdigo:
^ * tPaa> 'Form.l.vb|
jR s ,
I
H
6 . A l e j e c u t a r e l f o r m u l a r i o s e mostrar l o s i g u i e n t e : Establece las siguientes propiedades para los c o n t r o l e s B u t t o n del f o r m u l a r i o . Cambia la propiedad Text a Actualizar, Detalle y Salir respectivamente. 4 . D a d o b l e c l i c e n e l botn A c t u a l i z a r p a r a a b r i r e l e d i t o r d e cdigo, y l u e g o e n e l e v e n t o B u t t o n l _ C I i c k , a d i c i o n a e l s i g u i e n t e cdigo.
Probar clase
-inlxl
J Button 1
d i / Click
Descfipcii Tiempo Vid a. I
1
Private SubButtonl_Click(ByVal sender As Syste With suministrol .primercodigo = TextBoxl.Text .primernombre = TextBox2.Text .primeradescripcion TextBox3.Text .calculatv = TextBox4.Text .primersitu - CheckBoxl.Checked End With End S u b
SSST
aSj
Lbllmporte. Lbllgv.Text
")
Pago de factura
= ""
TxtCliente.FocusQ
I n s t r u c c i o n e s d e l Botn B t n C e r r a r CloseQ
Controles
utilizados
G r a d o s
^ ^ ^ ^ ^ ^ Q ^ n l ! Q ^ ^ P ' * . ^ F <3f enficit FDT_ih_t 3 - . s n . ip, &j<>
Cdigo I n s t r u c c i o n e s d e l Botn B t n C a l c u l a r
' G r a d o s *C ' S R
Convierte"
O r a d o s *F 1 3 6 . 4 0
gv As
Double
Cerrar
= Monto
= Monto -
187
Zmm
HMWMBMMI
,:; gSfllll | | p | t P l l i l i I n s t r u c c i o n e s d e l e v e n t o CheckedChnged d e lc o n t r o l Labell.Text Labe.Text TxtGrados. = "Grados = "Grados ClearQ = *"' C" F"
RbCelFar
LblResultado.Text
del control
RbFarCel
I n s l r u c c i o n c s d e l Botn B t n C o n v i e r t e If RbCelFar.Checked=False MessageBox.Show(''Seleccione "No se puede Convertir And RbFarCel.Checked=False el Tipo de Conversin", Then
Instrucciones del evento T e x t C h a n g e d del control T x t G r a d o s 'Si se digita los grados, BtnConvierte.Enabled se activa el botn Convertir > 0
= Len(Trim(TxtGrados.Text))
I n s t r u c c i o n e s d e l e v e n t o c l i c k d e l botn B t n C e r r a r CloseQ
* 9 / 5) + 32 : - 32) * 5 / 9 " ' Programa003: Este programa permite registrar en controles L i s t B o x los datos ingresados e n c o n t r o l e s T e x t B o x , N u m e r i c U p D o w n , C h e c k B o x y R a d i o B u t t o n , adems p e r m i t e seleccionarlos y quitarlos.
R .= (Grados End If
' LbIResultado.Text'
R,ToString('%ftO.OO")
225S
25Ss(E2*
^SSt
V i s u a l S t u d i o 2008
C a p t u l o IV: s u a j B a s i c , 2 0 0 8
v
5!
P a r a desarrollar este p r o g r a m a , p r i m e r o debes crear dos p r o c e d i m i e n t o s 1. E s t e p r o c e d i m i e n t o p e r m i t e seleccionar todos los d a l o s d e l e l e m e n t o seleccionado: V H H r V H H r Sub Seleccionar(ByVal Elemento = = As Integer)
Elemento Elemento
Elemento = Elemento
seleccionado
Dim Edad As Byte If TxtNombre. Text. Trini = " " Then MessageBo.x.Show(" TxtNombre.FocusQ Ingrese el Nombre", "Por Favor")
. s s H G D
mSSST
IIHIIIlftBd
= False Seleccione
d e le v e n t o
SelectedlndexChanged
d e l control
= UpEdad3.
(LbNombre.Selectedlndex)
If CkCasado.Checked Casado Else Casado Endlf If RbManana.Checked Turno = Elself = "No" = "Si"
del control
LbTurno
del control
LbEdad
RbTarde.Checked "Tarde"
Seleccionar(LbCasado.Selectedlndex) "Noche" 'Instrucciones d e lcontrol B t n Q u i t a r If LbNombre.Selectedlndex LbNombre.Items.Add(Nombre) MessageBox.Show("Seleccione 'tems.Add(Edad.ToString) MessageBoxButtons. Turno. Items.Add(Turno) Else h Casa do.Items. Add 'ombre.CIearQ m s s s t m (Casado) m 0 Quitar(LbNombre.Selectedlndex) Endlf OK, MessageBoxIcon.Information) un elemento", "Para Quitar", < 0 Then
M W i m i mmmammmmmmmmtmaaammimaimimmm
ZZZZm
*8Ss
V i s u a l Studio 2008
BtnLimpiar
'Instrucciones del control LbNombre. Items. LbTurno. Items. LbEdad.Items. LbCasado. ClearQ ClearQ ClearO ClearQ
Items.
A l c o n t r o l I m a g e L i s t l agrgale u n grfico e n s u p r o p i e d a d I m a g e s .
"i
A l c o n t r o l T v P e r s o n a l asgnale e l n o m b r e d e l c o n t r o l I m a g e L i s t l e n s u s propiedades LargelmageListy SmallImageList. A l control C b o V i s t a s adiciona en su propiedad Items los estilos de visualizacion del control L i s t V i e w , en el orden siguiente:
3 3
NolngresarQ
:
'Instrucciones del evento F o r m L o a d 'Asigna el formato inicial a lcontrol L i s t V i e w LvPersonal. View = View.Details = True = True ", 50,
HorizontalAlignmen LvPersonal.
Columns.Add("Nombre ment.Left)
", 200,
Columns.Add("Sueldo
",
100,
HorizontalAlignment.Right) 'Llena el Personal 'Crear el procedimiento Sub NolngresarQ TxtNombre.ReadOnly TxtSueldo.ReadOnly 'Activa el botn Enabled = True = True Nolngresar Dim Personal Personal As ListViewItem 0)
= New ListViewItem("001",
Add(Personal)
(BtNevo. 'Desactiva
Personal
= New ListViewItem("002",
0)
Personal. Subltems.Add("Oscar
False
Personal.SubItems.Add("850.00
"SSg
= New ListViewItem("003
'Permite escribir el N o m b r e y Sueldo TxtNombre.ReadOnly TxtSueldo.ReadOnly TxtNombre. Text TxtSueldo. Text = False = False <
= True Nolngresar
BtnGrabar.Enabled 'Instrucciones CboVistas 'Estas instrucciones LvPersonal. d e levento SelectedlndexChanged d e l control Btnlgnorar.Enabled
del control
ListView
View =
ListViewItem
'Instrucciones del evento Click del control 'Estas instrucciones muestran elementos seleccionado. TxtCodigo.Text = _ en las cajas
LvPersonal del
de texto la informacin
G r u p o Editorial M e g a b y t e
S S 2 S
G r u p o Editorial M e g a b y t e
*9Mm
Programa005: E n e s t e e j e m p l o l o s c o n t r o l e s T r e e V i e w estn e n d i f e r e n t e s f o r m u l a r i o s y l a s aulas se agregan a los T r e e V i e w e n e lm i s m o m o m e n t o e n e l q u e se agregan a l control ListBox. Existe u n formulario principal llamado F o r m l que contiene u n control M e n u S t r i p desde d o n d e se l l a m a n a los otros formularios.
ggjj
HForm
H U 13 H ,.| Aulas
;
;;-:.-v
'
E l f o r m u l a r i o N 0 1 ( a u l a s ) , p e r m i t e a g r e g a r n u e v a s a u l a s a l c o n t r o l L i s t B o x y a lm i s m o tiempo a los controles T r e e V i e w de los otros formularios. E l f o r m u l a r i o N 0 3 ( a u l a s x e s p e c y t u r n o ) , p e r m i t e m o s t r a r l a s a u l a s a g r u p a d a s por s u especialidad y turno e nu ncontrol T r e e V i e w ( T v A u l a s E s p T u r ) .
IMfTlMP'l '
* - *
**
" .l-r.rn- -
Cerrar
'~"
mw
"?S-
^ )
' I n s t r u c c i o n e s p a r a e l men
I n g r e s a l o s tems n e c e s a r i o s p a r a c a d a u n o d e l o s c o m b o s e n l a p r o p i e d a d tems d e l a v e n t a n a d e p r o p i e d a d e s .
Iife
Private Sub AgregarToolStripMenuItem_Ciick(ByVal sender As ObfSXL ByVal e As System.EventArgs) Hanales Agregar'ToolStripMenultcm.Click ' aulas.ShowQ End Sub H
Private Sub PorEspecialidadToolStripMenuItemjClick(ByVal As Object, ByVal e As System.EventArgs) PorEspecialidadToolStripMenuItem.Click aulasxespec. End Sub ShowQ
sender Handles
Private Sub PorEspecialidadYTurnoToolStripMenuItem_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Po r Especia lidad YTurn o ToolStripMen ultem. Cl ick aulasxespecy'turno. End Sub ShowQ
'Instrucciones del evento F o r m L o a d del formulario Principal. Estas instrucciones agregan loselementos principales de cada uno d e l o s controles T r e e V i e w que se e n c u e n t r a n e n e l F o r m 2 y F o r m 3 . Private Sub aulas_Load(ByVal sender As System.Object, System.EventArgs) Handles MyBase.Load 'Agrega los elementos para el TreeView del las aulas por su Forml ByVal e As
Especialidad
naTrawaimiiiiMH!'ii'n'iiii
i m n i 11 m u a
203
"SIS-
If CboEspecialidad.
Text = String.Empty la
TreeNode(Computacin)
Nodes.Add(Tarde)
Then el Ciclo)
Padre.Nodes.Add(Noche) '*** IDIOMAS Padre = New **** TreeNode(Idiomas) TvA ulasEspTur.Nodes.Add (Padre)
aulasxespecyturno. Padre.
Nodes.Add(Maana)
Then el Grupo)
If RbManana.Checked = False And RbTarde.Checked RbNoche.Checked = False Then MessageBox.Show(Seleccione Exit Endlf Sub el Turno)
= False
And
' I n s t r u c c i o n e s d e l botn A g r e g a r d e l F o r m u l a r i o F o r m l Estas instrucciones p e r m i t e n agregar las aulas a l c o n t r o l L i s t B o x del f o r m u l a r i o l ' o m i l - y a cadalin*dc l o s c o n t r o l e s T r e e V i e w d e l o s f o r m u l a r i o s F o r m 2 y F o r m 3 . WJ^^.^^^9^M^^h( yVal Svslem.EvcnArgsfHa Dim'Especialidad;
R
String
Selectedlndex
>s
3yVal
e As
Tumo As
SSSg.
5SSE!29
*SSs
<V>
Especialidad -
Gru = Convert.ToString(CboGrupo.SelectedIndex If RbManana.Checked Tur = M Elself RbTarde.Checked = True Then = True Then
J,
Aula)
1, Aula)
Tur = T Else Tur Endlf 'Genera el cdigo del aula Aula = Esp & Tur & Cic & Gru 'Busca la nueva Dim X As Integer 1, Aula) For X = 0 To LbAulas.Items.Count LbAulas.Selectedlndex If Lb Aulas.Text = Aula = X Then Aula: & Aula & ya existe, 1, Aula) - 1 aula N
= Aula.Substring(0, 1)
aulasxespecyturno.TvAulasEspTur.Nodes(0).Nodes(0).Nodes.Insert(I,
Case
aulasxespecyturno.TvAulasEspTur.Nodes(0).Nodes(I).Nodes.Insert(l,
Case
SBS&:.." 'Agrega
. *
el aula al control
tes
Grupo Editorial Megabyte SSS M S Grupo Editorial Megabyte B s i s G S
\mm
1,
Aula) Case T
1,
Aula)
aulasxespecyturno.TvAuIasEspTur.Nodes(l).Nodes(]).Nodes.Insert(l,
Case 1, Aula)
aulasxespec)'turno.TvAulasEspTur.Nodes(l).Nodes(2).Nodes.Insert(l, End Case Select EN Turno ProgramaOO: Este programa utiliza u n control creado por el usuario que muestra u n grupo d e e l e m e n t o s segn e l v a l o r q u e s e l e a s i g n e e n s u p r o p i e d a d T i p o l a c u a l p u e d e tener los siguientes valores: TvAulasEspTur.Nodes(2).Nodes(0).Nodes.Insert(1, Alfabtico: M u e s t r a l a s l e t r a s d e l a l f a b e t o e n m a y s c u l a s . I m p a r e s : M u e s t r a l o s nmero i m p a r e s e n t r e 1 y 9 9 Case T TvAulasEspTur.Nodes(2).Nodes(l).Nodes.Insert(1, L o s e l e m e n t o s s e m u e s t r a n c u a n d o s e h a c e c l i c e n e l botn V e r q u e f o r m a parte del control de usuario. Case N aulasxespecytumo.TvAulasEspTur.Nodes(2).Nodes(2).Nodes.Insert(l, P a r e s : M u e s t r a l o s nmeros p a r e s e n t r e 2 y 1 0 0 aulasxespecyturno.
aulasxespecyturno. 1, Aula)
1,
Aula)
1,
escribe:
* *.
Grupo Editorial Megabyte
. s s s s G B
2. C r e a u n n u e v o c o n t r o l l l a m a d o L i s t a . L u e g o d a c l i c e n Add. 5. Despus d e d e f i n i r l a v a r i a b l e , c r e a l a p r o p i e d a d t i p o . i r
i.j(Declarations)
( P u b l i c C l a s s L i s t a Dim rtitipo A s S t r i n g Public Property tipo() As String Get Return mtipo End Get S e t ( B y V a l valu A s S t r i n g ) m t i p o = valu End S e t End P r o p e r t y
6 . A h o r a e s c r i b e l a s i n s t r u c c i o n e s d e l botn V e r p a r a a g r e g a r a l c o n t r o l L i s t B o x l o s e l e m e n t o s segn e l v a l o r a s i g n a d o e n e l p r o p i e d a d T i p o .
' I n s t r u c c i o n e s d e l botn V e r Private Sub Button 1_Click(ByVal sender As System.Object, System.EventArgs) Handles Buttonl.Click Dim Ele As Byte L istBox 1. Items. ClearQ Select Case mtipo ByVal e As
= r = r
*S5
ForEle
Next Case For Alfabtico Ele = 65 To 90 ListBoxl.Items.Add(Chr(Ele)) Next End End Sub Select
7 . P a r a q u e e l n u e v o c o n t r o l q u e d e c o n s t r u i d o , d a c l i c e n l a opcin B u i l d y l u e g o e n e l n o m b r e d e t u aplicacin.
1 0 . E l cdigo p a r a e s t o s c o n t r o l e s e s e l s i g u i e n t e :
RbAlfabetico
RbAlfabetico.Text RbPares
Rblmpares
Rblmpares.Text
Grup(3Edit^
^SS
d a c l i c e n e l botn A d d .
3. E s c r i b e e l s i g u i e n t e cdigo p a r a l a c l a s e : 'Creacin d e l a clase Public Class Notas para las propiedades As Double Notas
'Variables
Sub New(ByVal = NI
NI As Double,
ByVal N2 As
Double)
m_Notal
Property
NotalQ
Add Class...
.252
" S I -
(\)
Public Function
Set (ByVal valu As m_Notal End End Public Get Return End Get valu As m_Nota2 Set Property = valu
Aprobado
Desaprobado
"% : "
If Function
Function
CualidadQ
As
String
Set(ByVal
m_Nota2 = valu End End Set Property de una propiedad proQ As Privada Double
Property
Set(ByVal
= valu Return
'Mtodos
'
End
i
Function Class
..
Public
Function
As
isssBB
-.,;VuV--' ^ B K
I H u H t
de la clase
Notas B)
As New Notas(A,
MessageBox.Show(Ingrese
Text = Calificaciones.
Double.Parse(TxtNota2.Text) que las notas estn entre 0 y 20 20 Then Nota N" 01 debe estar entre 0 y 20,
MessageBox.Show(La Verifique) TxtNota l.Text = xtNoial r-^/'^Exit Sub .FocusQ ;-. ,',' ,
Button3.Click
<0OrB
> 20 Then
QOS!Sn
G r u p o Editorial Megabyte
mmmmmmmmmmmmmnmnmwwmmmmmmmm
"22
Y
m_Numero = valu
End Set ".r'-L
'
..*.*
End
Identificar nmero
." ?f:Cngfea un "Nmero}
'Mtodos Public
Function
Favor)
...
Exit Endlf F=
;'.
Function
'TlWWl^
I I ililMlililTIw
. . . .
1 X = 1 To m_Numero F = F*X
f% -Prim- : V ; ? | N o ;
For
Next 'Contenido d e la clase informe Public Class Informe Long clase Numero As Integer) End Public Return F
Dim X As
Integer = False
Sub New(ByVal
Dim Sw As Boolean
If m_Numero < 3 Then Sw = False For X - 2 To m_Numero - 1 If m_Numero Mod X = 0 Then Sw = True End If
Property
3555
222!r^^
J S g
<
Exit Endlf Dim Numero As Integer 'Almacena Sub
wm
*- '
^BmuW. . .Mt'j _ H _ ^ - J H P
el numero ingresado
End
Class
Private Sub Button 1 _Click(ByVal sender As System.Object, System.EventArgs) Handles BtnVer.Click If TxtNumero.Text = String.Empty Then Nmero, Por
ByVal
e As
Informe(Numero)
MessageBox.Show(Ingrese TxtNumero. Exit Endlf Dim Numero As Integer ingresado Sub FocusQ
= Num.
Programa009: Se ingresa u n descuento e n porcentaje para el cliente y muestra el total vendido al cliente (Precio d e V e n t a * Cantidad) y e l total q u edebe pagar (Total V e n d i d o - U t i l i d a d e n S o l e s ) . P a r a e s t a aplicacin s e u t i l i z a u n a c l a s e d e r i v a d a l l a m a d a T o t a l P a g o s que hereda la clase T o t a l C o m p r apara poder obtener e l total c o m p r a d o por e l cliente y calcular e l total a pagar aplicando e l descuento.
Informe(Numero)
LblFactorial.Text LblPrimo.Text
' I n s t r u c c i o n e s d e l botn
r|<_22S B
G r u p o Editorial Megabyte
SSSSZ
ir'
G r u p o Editorial Megabyte
a K i i r "
,
<i
Public Function TotalQ As
Case 1 To 10 Utilidad = 50 m *
de la
Sub New(ByVal
= Cant
Property
PCompraQ
mPrecioCompra
PrecioVenta
mjCantidad
Set (ByVal valu As mPrecioCompra End End Public Get Return End Get valu As
^^HP
C r e a l a clase h e r e d a d a
totalpago
Set(ByVal
Cantidad
- valu :
^ f f i f c - v - ' '
tpcrty
[*$
Add C l a s s . . .
C S a S S S i T
225
= valu
Public
Function
PagosQ Pago As
As
Double
Function Class
' I n s t r u c c i o n e s d e l botn B t n C a l c u l a r Private Sub Button 1 jClick(ByVal sender As System.Object, System.EventArgs) Handles BtnCalcular.Click Dim Precio, Dim Cantidad Utilidad As As Integer Parse(TxtPrecio.Text) Text) Text) Cantidad, Utilidad) Double ByVal e As
Inherits
Pe As Double,
Precio
= Double.
R.Total.ToString(#,##0.00) R.Pagos.ToString(#,##0.00)
pSmic Get
Propertv
Descuento!)
As
Double
End
Sub
mJDescuento
r
G r u p o Editorial Megabyte
mZmmm
" S S -
ProgramaOlO: Este programa permite ingresar u n valor e nuna unidad de medida y calcula s u e q u i v a l e n t e e n : P u l g a d a s , P i e s , Y a r d a s , M e t r o s , Kilmetros y M i l l a s . Para realizar estas conversiones se utiliza u n a clase l l a m a d a M e d i d a s q u e c o n v i e r t e e l v a l o r i n g r e s a d o a centmetros y e s t a c l a s e e s h e r e d a d a p o r o t r a l l a m a d a c o n v e r s i o n e s q u e c o n v i e r t e d e centmetros a o t r a s u n i d a d e s .
ValorQ As Decimal
. " ^ ^
'''JI
Sel(ByVal
Decimal)
m Valor = valu End End Public Get Return End Get valu As String) mJMedida Set Property Property MedidaQ As String
Set(ByVal
= valu
CentimetrosQ
As
Double
Decimal mJMedida
Centmetros
' L a s instrucciones para l a clase m e d i d a son: las's ^^jUin^iCMedida Dim m. Valor As Sub New'(ByVal m Valor = V medidas As String:, Decimal VAs Decimal, t&mzm ByVal M As String)
C = m Valor * 30.48
Im
MyBase. Centmetros
\ 4 H H |
C = m_Valor Case
Kilmetros End
Public Function
Decimal / 161031
Class
Class
Private Sub Button 1 _Click(ByVal System.EventArgs) Handles Button ' L a s instrucciones Public Class p a r a l a clase Conversiones son: Dim Medida, conversiones Dim Valor As Inherits medidas Medida Sub New(ByVal MyBase.New(V, End Sub PulgadasQ As Decimal / 2.54 VAs Decimal, M) ByVal M As String) Formato = = Decimal Formato As
If TxtValor.Text
MessageBox.Show(Ingrese TxtValor.FocusQ Exit Endlf PiesQ As Decimal / 30.48 If RbCentimetros.Checked If RbPulgadas.Checked If RbPies.Checked Decimal / 91.44 If RbYardas.Checked If RbMetros.Checked Sub
Public Function
Centmetros Pulgadas
MyBase.Centimetros
Function
I M S M
aaS'SZZ
" S -
Visual Studio 2008 If RbKilometros.Checked If RbMillas.Chechea Valor = Decimal. Dim Conversin LblCentimetros. LblPulgadas.Text LblPies.Text LblYardas.Text LblMetros.Text LblKilometros. LblMillas.Text End Sub = = True Then Medida = True Then Medida Parse(TxtValor.Text) As New conversiones Text = Conversin. = Conversin. (Valor, Medida) ToString(Formato) ToString(Formato) = = Kilmetros
Millas
Centmetros.
Pulgadas.
Conversion.Metros.ToString(Formato) ToString(Formato)
Text = Conversion.Kilometros. =
Conversin.Millas.ToString(Formato)
Contenido:
|- Crear una aplicacin WPF Adicionar controles a una ventana WPF usar controles WPF comunes - Creando eventos manualmente para los controles WPF -Crear un dibujo usando WPF
G R U P D I Z E D I T O R A
Megabyte