ÿþC + + B u i l d e r . P r o g r a m o w a n i e o b i e k t o w e . w i c z e n i e 3 . 1
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
P R O G R A M O W A N I E O B I E K T O W E
W I C Z E N I E 3
C + + B U I L D E R 6 . 0 P E
" P r o j e k t o w a n i e p r o s t e j g r a f i k i
" O b i e k t T C a n v a s
" O b i e k t T s c r o l l B a r
" O b i k e t T L a b e l
" M e t o d a M o u s e D o w n
" M e t o d a M o u s e U p
" M e t o d a M o u s e M o v e
" Z d a r z e n i e O n M o u s e D o w n
" Z d a r z e n i e O n M o u s e U p
" Z d a r z e n i e O n M o u s e M o v e
" Z d a r z e n i e T S c r o l l B a r - > O n C h a n g e
" P l i k n a g Bó w k o w y
© 2 0 0 4 J e r z y K l u c z e w s k i
2 C + + B u i l d e r . P r o g r a m o w a n i e o b i e k t o w e . w i c z e n i e 3 .
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
I . W s t p
N a s z p r z y g o d z g r a f i k w C + + B u i l d e r z e r o z p o c z n i e m y o d o b i e k t u C a n a v a s ( a n g .
p Bó t n o ) .
N a s z p r o j e k t p l i k a c j i z a p i s z e m y w p l i k a c h r o z p o c z y n a j c y c h s i o d n a z w y G r a f i k a 3 .
U t w ó r z p r o j e k t a p l i k a c j i z a p o m o c p o l e c e n i a F i l e N e w A p p l i c a t i o n
Z a p i s z p r o j e k t a p l i k a c j i z a p o m o c p o l e c e n i a F i l e S a v e A l l . . .
C + + B u i l d e r . P r o g r a m o w a n i e o b i e k t o w e . w i c z e n i e 3 . 3
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Z a p i s z p r o j e k t d o p l i k ó w :
" f o r m u l a r z a d o G r a f i k a 3 U n i t 1 . c p p ,
" g Bó w n e g o p l i k u p r o j e k t u G r a f i k a 3 . b p r
Z m i e D t y t u B f o r m u l a r z a F o r m 1 :
U s t a w o p c j e p r o j e k t u z a p o m o c p o l e c e n i a P r o j e c t O p t i o n s . . .
a w o k n i e z m i e D n a s t p u j c e o p c j e :
P o l e c e n i e : P r o j e c t O p t i o n s A p p l i c a t i o n L o a d I c o n
© 2 0 0 4 J e r z y K l u c z e w s k i
4 C + + B u i l d e r . P r o g r a m o w a n i e o b i e k t o w e . w i c z e n i e 3 .
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
W p o l u N a z w a p l i k u u s t a w G r a f i k a 3 . i c o .
P o z a t w i e r d z e n i u w p a n e l u I c o n p o j a w i s i w Ba [c i w a i k o n a .
P r z e j d z d o z a k Ba d k i L i n k e r
W y Bc z o p c j U s e d y n a m i c R T L .
P r z e j d z d o z a k Ba d k i P a c k e g e s
W y Bc z o p c j B u i l d w i t h r u n t i m e p a c k a g e s .
Z a t w i e r d z o p c j e p r o j e k t u G r a f i k a 3 z a p o m o c p r z y c i s k u O K . i p r z e j d z d o
n a s t p n e g o r o z d z i a Bu .
C + + B u i l d e r . P r o g r a m o w a n i e o b i e k t o w e . w i c z e n i e 3 . 5
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
I I . O b i e k t C a n v a s
Z a p o m o c k l a w i s z a F 1 2 p r z e j d z d o o k n a e d y t o r a k o d u C + + :
O t o p l i k zr ó d Bo w y G r a f i k a 3 U n i t 1 . c p p w C + + :
O t w ó r z p l i k n a g Bó w k o w y G r a f i k a 3 U n i t 1 . h :
K l i k n i j n a z a k Ba d c e z a w i e r a j c e j n a p i s G r a f i k a 3 U n i t 1 . c p p p r a w y m p r z y c i s k i e m
m y s z y i w y b i e r z p o z y c j O p e n S o u r c e / H e a d e r F i l e .
© 2 0 0 4 J e r z y K l u c z e w s k i
6 C + + B u i l d e r . P r o g r a m o w a n i e o b i e k t o w e . w i c z e n i e 3 .
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
W o k n i e e d y t o r a p o j a w i s i z a w a r t o [ p l i k u n a g Bo w k o w e g o :
W s e k c j i p u b l i c : w s t a w d e k l a r a c j z n a c z n i k a r y s o w a n i a :
b o o l R y s u j ;
P r o j e k t o w a n i e z d a r z e n i a O n M o u s e D o w n
Z d a r z e n i e O n M o u s e D o w n o k r e [l a n a c i [n i c i e m y s z y .
T e r a z z a p r o j e k t u j e m y o d p o w i e d z f o r m u l a r z a n a n a c i [n i c i e m y s z y .
Z a p o m o c k l a w i s z a F 1 1 p r z e c h o d z i m y d o o k n a O b j e c t I n s p e c t o r . W y b i e r a m y
z a k Ba d k E v e n t s i w y s z u k u j e m y z d a r z e n i e O n M o u s e D o w n .
K l i k a m y d w a r a z y n a t y m n a p i s i e O n M o u s e D o w n .
C + + B u i l d e r . P r o g r a m o w a n i e o b i e k t o w e . w i c z e n i e 3 . 7
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
P o j a w i a s i o k n o k o d u C + + i p u s t a m e t o d a T F o r m 1 : : F o r m M o u s e D o w n :
W m e t o d z i e t e j w p i s u j e m y p o m i d z y n a w i a s a m i k l a m r o w y m i { i } n a s t e p u j c y k o d :
/ / o k r e s l a m y o b s z a r r y s o w a n i a i p o z y c j p o c z t k o w
C a n v a s - > F i l l R e c t ( C l i e n t R e c t ) ;
C a n v a s - > M o v e T o ( X , Y ) ;
/ / u s t a w i a m y z n a c z n i k r y s o w a n i a , a b y m y s z z o s t a w i Ba s l a d
R y s u j = t r u e ;
P r o j e k t o w a n i e z d a r z e n i a O n M o u s e U p
Z d a r z e n i e O n M o u s e U p o k r e [l a p u s z c z e n i e m y s z y .
T e r a z z a p r o j e k t u j e m y o d p o w i e d z f o r m u l a r z a n a p u s z c z e n i e k l a w i s z a m y s z y .
W o k n i e O b j e c t I n s p e c t o r w y b i e r a m y z a k Ba d k E v e n t s i w y s z u k u j e m y z d a r z e n i e
O n M o u s e U p .
K l i k a m y d w a r a z y n a t y m n a p i s i e O n M o u s e U p .
© 2 0 0 4 J e r z y K l u c z e w s k i
8 C + + B u i l d e r . P r o g r a m o w a n i e o b i e k t o w e . w i c z e n i e 3 .
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
P o j a w i a s i o k n o k o d u C + + i p u s t a m e t o d a T F o r m 1 : : F o r m M o u s e U p :
W m e t o d z i e t e j w p i s u j e m y p o m i d z y n a w i a s a m i k l a m r o w y m i { i } n a s t e p u j c y k o d :
/ / p u s z c z o n o p r z y c i s k m y s z y - k o n i e c r y s o w a n i a
R y s u j = f a l s e ;
P r o j e k t o w a n i e z d a r z e n i a O n M o u s e M o v e
Z d a r z e n i e O n M o u s e M o v e o k r e [l a p o r u s z a n i e s i m y s z y .
T e r a z z a p r o j e k t u j e m y o d p o w i e d z f o r m u l a r z a n a p o r u s z a n i e s i m y s z y .
W o k n i e O b j e c t I n s p e c t o r w y b i e r a m y z a k Ba d k E v e n t s i w y s z u k u j e m y z d a r z e n i e
O n M o u s e M o v e .
K l i k a m y d w a r a z y n a t y m n a p i s i e O n M o u s e M o v e .
P o j a w i a s i o k n o k o d u C + + i p u s t a m e t o d a T F o r m 1 : : F o r m M o u s e M o v e :
C + + B u i l d e r . P r o g r a m o w a n i e o b i e k t o w e . w i c z e n i e 3 . 9
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
W m e t o d z i e t e j w p i s u j e m y p o m i d z y n a w i a s a m i k l a m r o w y m i { i } n a s t e p u j c y k o d :
i f ( R y s u j ) / / p r z e s u n i t o m y s z
C a n v a s - > L i n e T o ( X , Y ) ;
S p r a w d z a m y d z i a Ba n i e n a s z e g o p r o j e k t u :
R u n R u n ( F 9 )
P r o j e k t d z i a Ba ! ! ! D o d a j m y t e r a z p a r b a j e r ó w .
O b i e k t S c r o l l B a r
D o d a j m y m o \l i w o [ r y s o w a n i a w d o w o l n y m k o l o r z e . D o n a s z e g o f o r m u l a r z a
d o d a j e m y t r z y k o m p o n e n t y S c r o l l B a r i t r z y e t y t k i e t y L a b e l . E t y k i e t o m n a d a j e m y
k o l e j n o w Ba [c i w o [c i : C z e r w o n y , Z i e l o n y , N i e b i e s k i . I u s t a w i a m y j e o b o k
k o l e j n y c h o b i e k t ó w S c r o l l B a r .
© 2 0 0 4 J e r z y K l u c z e w s k i
1 0 C + + B u i l d e r . P r o g r a m o w a n i e o b i e k t o w e . w i c z e n i e 3 .
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
W Ba [c i w o [c i M a x w s z y s t k i c h o b i e k t ó w S c r o l l B a r u s t a w i a m y n a 2 5 5 ( 0 - 2 5 5 d a j e 2 6 6
o d c i e n i k a \d e g o k o l o r u ) .
W k o d z i e m e t o d y T F o r m 1 : : F o r m M o u s e D o w n w y k a s u j l i n i
C a n v a s - > F i l l R e c t ( C l i e n t R e c t ) ;
W p l i k u n a g Bó w k o w y m G r a f i k a 3 U n i t 1 . h w s e k c j i p u b l i c d o p i s z n a g Bó w e k f u n k c j i
U s t K o l o r :
_ _ f a s t c a l l U s t K o l o r ( v o i d ) ;
P r z e j d z d o k o d u C + + G r a f i k a 3 U n i t 1 . c p p i d o p i s z m e t o d
_ _ f a s t c a l l F o r m 1 : : U s t K o l o r ( v o i d ) :
_ _ f a s t c a l l T F o r m 1 : : U s t K o l o r ( v o i d )
{
i n t N o w y K o l o r ; / / w t e j z m i e n n e j w y l i c z y m y n o w y k o l o r
N o w y K o l o r = S c r o l l B a r 1 - > P o s i t i o n ; / / Z a c z y n a m y o d k o l o r u c z e r w o n e g o
N o w y K o l o r + = S c r o l l B a r 2 - > P o s i t i o n <