C++Builder 2006. 222 gotowe rozwiązania

42
Wydawnictwo Helion ul. Koœciuszki 1c 44-100 Gliwice tel. 032 230 98 63 e-mail: [email protected] PRZYK£ADOWY ROZDZIA£ PRZYK£ADOWY ROZDZIA£ IDZ DO IDZ DO ZAMÓW DRUKOWANY KATALOG ZAMÓW DRUKOWANY KATALOG KATALOG KSI¥¯EK KATALOG KSI¥¯EK TWÓJ KOSZYK TWÓJ KOSZYK CENNIK I INFORMACJE CENNIK I INFORMACJE ZAMÓW INFORMACJE O NOWOœCIACH ZAMÓW INFORMACJE O NOWOœCIACH ZAMÓW CENNIK ZAMÓW CENNIK CZYTELNIA CZYTELNIA FRAGMENTY KSI¥¯EK ONLINE FRAGMENTY KSI¥¯EK ONLINE SPIS TREœCI SPIS TREœCI DODAJ DO KOSZYKA DODAJ DO KOSZYKA KATALOG ONLINE KATALOG ONLINE C++Builder 2006. 222 gotowe rozwi¹zania Autor: Jacek Matulewski ISBN: 83-246-0395-6 Format: B5, stron: 496 Firma Borland, producent cenionych œrodowisk programistycznych, po³¹czy³a swoje trzy najpopularniejsze produkty: C++ Builder, Delphi i C# Builder, tworz¹c pakiet Borland Developer Studio 2006. Jednym z jego elementów jest najnowsza wersja C++ Builder, oznaczona symbolem 2006, która nadal pozostaje doskona³ym narzêdziem do tworzenia aplikacji dla platformy Win32. C++ Builder 2006 pozwala na korzystanie z biblioteki VCL, wywo³añ WinAPI i funkcji systemu Windows. Ksi¹¿ka „C++ Builder 2006. 222 gotowe rozwi¹zania” to zbiór porad zwi¹zanych z tworzeniem aplikacji dla systemu Windows. Wœród tytu³owych 222 rozwi¹zañ znajdziesz sposoby wykorzystywania komponentów z biblioteki VCL, elementów interfejsu programistycznego Windows (WinAPI), a tak¿e komunikatów systemowych oraz technologii COM, OLE i ActiveX. Dowiesz siê, jak tworzyæ biblioteki DLL i jak z nich korzystaæ, oraz nauczysz siê projektowaæ wspomagan¹ sprzêtowo grafikê 3D za pomoc¹ biblioteki OpenGL. • Korzystanie ze œrodowiska C++ Builder 2006 • Projektowanie okien aplikacji • Operacje na rejestrze systemowym • Tworzenie wygaszaczy ekranu • Kontrolowanie dzia³ania aplikacji za pomoc¹ funkcji WinAPI • Obs³uga po³¹czeñ sieciowych • Tworzenie bibliotek DLL • Tworzenie grafiki i animacji 3D Wykorzystaj w pracy gotowe rozwi¹zania, sprawdzone przez najlepszych programistów

description

Firma Borland, producent cenionych środowisk programistycznych, połączyła swoje trzy najpopularniejsze produkty: C++ Builder, Delphi i C# Builder, tworząc pakiet Borland Developer Studio 2006. Jednym z jego elementów jest najnowsza wersja C++ Builder, oznaczona symbolem 2006, która nadal pozostaje doskonałym narzędziem do tworzenia aplikacji dla platformy Win32. C++ Builder 2006 pozwala na korzystanie z biblioteki VCL, wywołań WinAPI i funkcji systemu Windows. Książka "C++ Builder 2006. 222 gotowe rozwiązania" to zbiór porad związanych z tworzeniem aplikacji dla systemu Windows. Wśród tytułowych 222 rozwiązań znajdziesz sposoby wykorzystywania komponentów z biblioteki VCL, elementów interfejsu programistycznego Windows (WinAPI), a także komunikatów systemowych oraz technologii COM, OLE i ActiveX. Dowiesz się, jak tworzyć biblioteki DLL i jak z nich korzystać, oraz nauczysz się projektować wspomaganą sprzętowo grafikę 3D za pomocą biblioteki OpenGL. * Korzystanie ze środowiska C++ Builder 2006 * Projektowanie okien aplikacji * Operacje na rejestrze systemowym * Tworzenie wygaszaczy ekranu * Kontrolowanie działania aplikacji za pomocą funkcji WinAPI * Obsługa połączeń sieciowych * Tworzenie bibliotek DLL * Tworzenie grafiki i animacji 3D Wykorzystaj w pracy gotowe rozwiązania, sprawdzone przez najlepszych programistów.

Transcript of C++Builder 2006. 222 gotowe rozwiązania

Page 1: C++Builder 2006. 222 gotowe rozwiązania

Wydawnictwo Helionul. Koœciuszki 1c44-100 Gliwicetel. 032 230 98 63e-mail: [email protected]

PRZYK£ADOWY ROZDZIA£PRZYK£ADOWY ROZDZIA£

IDZ DOIDZ DO

ZAMÓW DRUKOWANY KATALOGZAMÓW DRUKOWANY KATALOG

KATALOG KSI¥¯EKKATALOG KSI¥¯EK

TWÓJ KOSZYKTWÓJ KOSZYK

CENNIK I INFORMACJECENNIK I INFORMACJE

ZAMÓW INFORMACJEO NOWOœCIACH

ZAMÓW INFORMACJEO NOWOœCIACH

ZAMÓW CENNIKZAMÓW CENNIK

CZYTELNIACZYTELNIAFRAGMENTY KSI¥¯EK ONLINEFRAGMENTY KSI¥¯EK ONLINE

SPIS TREœCISPIS TREœCI

DODAJ DO KOSZYKADODAJ DO KOSZYKA

KATALOG ONLINEKATALOG ONLINE

C++Builder 2006.222 gotowe rozwi¹zaniaAutor: Jacek MatulewskiISBN: 83-246-0395-6Format: B5, stron: 496

Firma Borland, producent cenionych œrodowisk programistycznych, po³¹czy³a swojetrzy najpopularniejsze produkty: C++ Builder, Delphi i C# Builder, tworz¹c pakiet Borland Developer Studio 2006. Jednym z jego elementów jest najnowsza wersja C++ Builder, oznaczona symbolem 2006, która nadal pozostaje doskona³ym narzêdziemdo tworzenia aplikacji dla platformy Win32. C++ Builder 2006 pozwala na korzystaniez biblioteki VCL, wywo³añ WinAPI i funkcji systemu Windows.

Ksi¹¿ka „C++ Builder 2006. 222 gotowe rozwi¹zania” to zbiór porad zwi¹zanychz tworzeniem aplikacji dla systemu Windows. Wœród tytu³owych 222 rozwi¹zañ znajdziesz sposoby wykorzystywania komponentów z biblioteki VCL, elementów interfejsu programistycznego Windows (WinAPI), a tak¿e komunikatów systemowych oraz technologii COM, OLE i ActiveX. Dowiesz siê, jak tworzyæ biblioteki DLL i jakz nich korzystaæ, oraz nauczysz siê projektowaæ wspomagan¹ sprzêtowo grafikê 3Dza pomoc¹ biblioteki OpenGL.

• Korzystanie ze œrodowiska C++ Builder 2006• Projektowanie okien aplikacji• Operacje na rejestrze systemowym• Tworzenie wygaszaczy ekranu• Kontrolowanie dzia³ania aplikacji za pomoc¹ funkcji WinAPI• Obs³uga po³¹czeñ sieciowych• Tworzenie bibliotek DLL• Tworzenie grafiki i animacji 3D

Wykorzystaj w pracy gotowe rozwi¹zania, sprawdzone przez najlepszych programistów

Page 2: C++Builder 2006. 222 gotowe rozwiązania

�������� �� ��

��������������������������������������������������������������������������������������������������� !

��� "�#� ������$�%������������ ���������������������������������������� � �

&�����'� �� (����)�*+���������� ��� ������������������������������������������������������������ ,���������� ��� �������������������������������������������������������������������������������������������������������������� ��

��� ������������ ��������������������������������������������������������������������������������������������� ����� �������������������� ��������������������������������������������������������������������������������� ����� ��� ��������������������� �������������������������������������������������������������������������� �!��� ���"�#�$�%��������������������&�������'�������������� � ������������������ ����� ���(�#������������ �����������'��������������������������������������������������������� ����� ���)�������������� �����������' ��������������������������������������������������������������� ��

#������������ ���� ��������������������������������������������������������������������������������������������������������� �(��� ���������������������������� � ����������������������������������������������������������������� �(��� ���*�+������� ������ �������� �%�� �����%�������������$��������,������ �)���$��������������� �%�%���-�� � �������������������������������������������������������������������� �*

���������%��������� ������� �������������������������������������������������������������������������������������� �������$���� � ��%�����������������&��� ������������������������������������������������������������������ �

�������������������������&���� ���� ������������������������������������������������������������ �.���������������/���01������������������������������������������������������������������������������������� �2�� ��%���� ������������������������������������������������������������������������������������������������������������

.�-�$��������%� ���������������������������������������������������������������������������������������������������������� "

&�����'� �� -����'�����������*� ����������������������������������������������������������������� 3��� ���� ������������������������������������������������������������������������������������������������������������������������ "�

3��� ����%��������'��-����&��4�������������������������������������������������������������� "���$�� ������� ��������������������� ���&����������������������������������������������� ""3��� ����%������ ���������� ���� ��������������������������������������������������������������������� ")��%�������������������������������������������������������������������������������������������������������������������� "�

5������� � ������������������������������������������������������������������������������������������������������������������������ "*4��-��� �������������������������������������������������������������������������������������������������������������������������� "����� �������������������������������������������������������������������������������������������������������������������������������� (!

.������� ���������� ����������������������������������������������������������������������������������������������� (!��������������������������������������������������������������������������������������������������������������������������� (�6���%����������������������������������������������������������������������������������������������������������������������� ( 2�����������%������������������������������������������������������������������������������������������������������ ("�����'�����������%��%���$������������ ��� ���������������������������������������������� ()

3 ��� ���������������������������������������������������������������������������������������������������������������������������� (�

Page 3: C++Builder 2006. 222 gotowe rozwiązania

� ���������� ����� �������������������

&�����'�!�� (��.�+.�����)�.�����������.��)����� +���*�/�/����.��0�1������������������24�������������������������������������������������������������������������������������������������������������������������� (�

��� �����7�$�%����������������������� ����������������������������������������������������� (���� ����!�.����������������������������������� ��8����������9���� ���������������������������������������������������������������������������������������������������� )�

��� ��������������������� ����� �� ������������:�� ������������������������������������ )���� �������-�����$� %������������������'��& � ������ ���������� ������������������������������������������������������������������������������������������������������������������� )

��� ���� ��-�$������;������������������������������������������������������������������������ ) ��� ����"������� $����������� ��%���������� ���������������������������������������� ) ��� ����(�3���&������$����<�����'������=����������������������������������������������������� )(

5� ����������3��%��������������������������������������������������������������������������������������������������� )���� ����)������'����������� �������������������� ������������������������������ )*��� �������-����'����;������� ������$�������� � ������������������������� ����� ����*�#������������������� ������������������$�����<�����.�%� 0#�� ���$���= ��������������������������������������������������������������������������������� �"

��� ������>%��� ���������$������%����������?��������������������������������������������� ����� ����!�.�%���������� �%����������������$���� ����$������ ������������������ ������������������������������������������������������������������������������ *�

�����+1+ ��������������������������������������������������������������������������������������������������������������������������� * ��� ������@������ ��;������������-�����4�������&�%������333?������ *"��� ������@���%����;�������;�����������? �������������������������������������������������� *(

��$�%��������� �������� �����������%���&��������������������������������������������������������� *)��� ���� �3�����������������������$������� ��������������2���%����$���82���.����$������������������������������������������������������������������������������� *�

��� ����"�2���%����$���������������������������%�������������� �������������������������������������������������������������������������������������������������������������������� *�

��� ����(����������������������2���%����$���8/��%.����$��������������������������� �!��� ����)�/��������������$����&�������������������85��':%���2���%����$���8/���.����$ �������������������������������������������������������������������������������� ��

��� ������/������������������$&���'���-��&��������� ������������������������������� � ��� ����*������%�������������������'%���������'��������������������������������������� �(��� ������3��������%����������������������$� ���������������������%�������������������������������������������������������������������������������������������������������������������� ��

��� ��� !�@��%�%�;������� %������%���&�%��� ���'����������������$�����&��%���������������? �������������������������������������������������������� ��

6��'�����%��$A%����������������������������������������������������������������������������������������������������� ����� ��� ��6��'�������������������������������-� -�� �%�� ������� �������� �*��� ��� ��#���������������%��3������������������ �4��%�� ��������������������� �!���� ��� �������������������������&�������������������������������������������������������������� �! ��� ��� "�2-���$������������������$������� ����� ����� ������� � ��������� �!"

������� ����������� ����� ���'��'�%���� ������������������������������������������������������������ �!"��� ��� (�������� ��� %�����- ��� ���'���B���-�8:%���������� ��������������������������$������ ������������������������������������������ �!"

��� ��� )��������������%������������ ���� ������� ��������������������������������� �!)��� ��� ��5�����%����%����������������� �������������������������������������������������� �!���� ��� *�@����������������;%�� �����������������%�� ���8.���8������������� ���'? ��������������������������������������������������������������������������� �!�

��� ��� ��@��������������;�� ���'�����������������-�������������?6���%��������4����$ �������������������������������������������������������������������������������������� ��!

���������������&� ����������������������������������������������������������������������������������������������������� ������ ���"!�@��������� ���������&�8.��C�9��-�D�,E8.�������B���D�,E8/�����9��-�D�,�8/���B���D�,������;����� ����$� %��� ����&�? ���������� ���

��� ���"������$� %����������$&��/���B���D�, ������������������������������������������������ ���

Page 4: C++Builder 2006. 222 gotowe rozwiązania

�������� �� �,

��� ���"��8���������������������$������������������������������������������������������������������ �� ��� ���" �2%������������&���������' �������������������������������������������������������� ��"��� ���""����� ��������������������������'��������' ������������������������������� ��)��� ���"(�5� �����������%���� �������'��������' �������������������������������������� ������ ���")�2����� ���������'�������$��' ���������������������������������������������������������� ��!��� ���"��2%�� %������������%�������� �$������� �� ���������������������������� ������ ���"*�@����%� -��;��� ���'����� �����E �$���������������-������$E���&���� ��� %� �? ����������������������������������������������������������������������� ��

��� ���"��@�������%��;��� ;�����$���� �����%���? ���������������������������������� �� ��� ���(!�3��������%�����������$&������&��������������������������������������������� ��"��� ���(��3��������%�����������$&������&�����-��� ����������������� ��)

��� ����������$������������ �������������������������������������������������������������������������������� ��*��� ���(��3$������������ �������������������������������������������������������������������������������� ������ ���( ������$���� ��$������������� ��������������������������������������������������������� � (��� ���("���%$� %�$��������������%��3$������������������3�� ���� ��F:���� ���������������������������������������������������������������������������������������������� �"!

.����������������������������������������������������������������������������������������������������������������������������� �" ��� ���((�.������������������ %� ��$��� ������������85��':%���2���%����$���8�����.����$��������������������������������������������������������������������������������� �"

��� ���()�B����%��� ���'%��������4����$&������������ ��%��������3-&�%�� ��� %�������������� �����������%������������������������������������������� �""

��� ���(��.��������������������'������$��84����$����-��$�������� ������������������������������������������������������������������������������������������������������������ �"(

��� ���(*�@���%������;�-���������?������������������������������������������������������������ �"*

&�����'���� (��)�.��������.�*������3��0�1��������������������������������������������������� � >�������5������������ ������������������������������������������������������������������������������������������������ �(�

��� ���(��5������������ ������������������������������������������������������������������������������������� �(���� ���)!�3-&�������������� ����������89����.����$ ������������������������� �((

���������������� �������������������������������������������������������������������������������������������������� �()��� ���)�����$������������������ ����������������������������������������������������������������� �()��� ���)��8�����������������$���������� ���.��������������������������� �������������������������������������������������������������������� �)�

��� ���) �#��-�����������-����'������ ����%���� E�'�������'�������-����� ������������������������������������������������������������������������������� �)"

��� ���)"�.������������%���� ��������%���2���������9'��$�%������������������ �)(��� ���)(�+�������������� �������������������������������������������������������������������������������� �)���� ���))��-������;��� �������������������� ������������������������������������������ �)*��� ���)��+���������������������G9B%��3�� � ������������������������������������������ �)���� ���)*�������������������������8���������������������%�������2���������9'��$�% ���������������������������������������������������������������������������������������������� ���

��� "�##� (�����*�����������������+.���+������*����4(#����� � ,�

&�����'���� 5��������������+���*������������������������������������������������������������������� ,,��������������������������3��%��� ���������������������������������������������������������� ���

��� ���)��/���� �:,��3��%���:, ���������������������������������������������������������������������� ������ ����!����$������ �%�����������-�������$�����'�������%������ ���� �������3��%��� ���������������������������������������������������������������������� �*�

��� ������/���� �+�������4����4'��%��� ��������������������������������������������������������� �* ��� ���������$�������� ��-����������������� ��������������������������������� �*)��� ���� �H�-���������������������������������� ����� �4��4���������4���� ������������������������������������������������������������������������������������������� �**

��� ����"����$������ ����� �'�-����� �����������- �$�I��������J������ ��!

Page 5: C++Builder 2006. 222 gotowe rozwiązania

6 ���������� ����� �������������������

��� ����(�D���������%��� ��%����������������������������������������������������������������� ������ ����)�#���'��������$��������������������������������������������������������������������� ������ ������2%���������������� ��-����������-������������������������������������������ ���

����������-�� �������������$�������� ��������������������������������������������������������������� ��"��� ����*���-�������%��� ���'��-&���������$�������� ������������������������� ��(��� ������+%������������-�� ��$���-�%������������$�������� ���������������� ������ ���*!���������-�� ���������������������������������������������������������������������������� ���

&�����'���� -���7�*��������.���������������.��)���������7��.��� ��������������������� � #���'�������E������������������������������� � ����������������������������������������������� �!�

��� ���*��#���'�������������� �������� ����� �3��:,����������������������������� �!���� ���*��#���'�������������� �������� 4'���:,�������������������������������������� �! ��� ���* ����$���������K������������ 4'���:,����� ��������������������������������� �!(��� ���*"����������������-�� �� ������� ������������������������������������������������������ �!(��� ���*(�4����%��������������-�� �� ������� � �������������������������������������������� �!)��� ���*)�������������������� ������� ����������������������������������������������������������� �!���� ���*�������������� ������� ���������������������������������������������������������������������� �!*��� ���**�#���'�������������� �������� ����� �9������������������������������� �!���� ���*��3����������� ������%������������'������ ������� ����������������� ��(��� ����!����������������� ��������� �������� �����%�������������� ������������������������������������������������������������������������������������������������������������������� ���

������������������� �������������������������������������������������������������������������������������������� ������ ������B�����������'��������������������������������������������������������������������������������� ������ ������6�%������������������-�� �� ������� ��������������������������������������� ������ ���� �#�������������� ����������%� ���������������������������������������������������� �� ��� ����"�6��$�� %�����L ���������������������������������������������������������������������������������� ��"��� ����(�4$���% �� ����������������������������������������������������������������������������������� ��"

1�����%�������� ������������'������ ����������������������������������������������������������� ��(��� ����)�@���%�-;�%�����������������E��� ���'������?���������������������� ��(��� ������@���%�-;��'��$�&���$�����E��� ��%�����������������? ����� ��)��� ����*���������������������� ������� � ������������������������������������������������������ � !��� ����������������������� ������� �M���������89������������������������ � (��� ����!!�������%������������89��������������������������������������������������������� �""

2����%���������������������������������������������������������������������������������������������������������� �""��� ����!��2������������������������������������������������������������������������������������������� �"(��� ����!��7 �������-����&��.�%�������������������������������������������������� �")��� ����! �2������� ������������������������������������������������������������������������������������� �"���� ����!"��-��������;���� ���� ����������� ��$����������� �������� �"*

&�����'�,�� �+���*+���.3�8�*���*�����������9��.�)�����4(# �������������������������� �2���������������&�M����� �������� ��������������������������������������������������������������������� �"�

��� ����!(�@��������� ����� �3����+��������������%����;��� � %�������$����� ����$�� ��������?���������������������������������������������������� �(!

��� ����!)�8����������������&������ ���������������������������������������������������������������� �(���� ����!��2%�����%� ����&������ ����������������������������������������������������������������� �("��� ����!*�#��������������&������������ �������������������������������������������������������� �()��� ����!��2����� ���������'�������$��'��������������������� ��������<����������E������������E�������������������= ������������������������� �()

��� �����!�@������ ;����E��������� �$�������? ��������������������������������������� �(*��� �������2����� �������������$����������������������������������������������������������������� �(���� �������2%������������ ��������,���%�� ������������������������������������������������� �)!��� ����� �@��%�%�;���� %��������%��������������������'%�������&������4����? ��������������������������������������������������������������������������������� �)

Page 6: C++Builder 2006. 222 gotowe rozwiązania

�������� �� �2

2%���������������� ��%��� ��������������������������������������������������������������������������������� �)"��� �����"�/���� ������������������������������������������������������������������������������������������������� �)"��� �����(�8�������� � ����������������������������������������������������������������������������������������� �)���� �����)������ ��������������������������������������������������������������������������������������������������� ��!��� ���������������������������������������������������������������������������������������������������������� ���

+������-�����������%�������<����-����= �������������������������������������������������������������� ������ �����*�/���� �4'���N1����+���������������������������������������������������������������������� ������ ����������������88��+��� ����������������������������������������������������������������������� ��*��� �����!�6�������������������������������������������������������������������������������������� ������ �������I.���J ��������������������������������������������������������������������������������������������� �*!

+���������������������������������������������������������������������������������������������������������������������������������� �*���� ��������-�����%��;E���������� ������ ���������� ������������������������ �*���� ����� ��-��-��;�������������� ���������������������������������������������������������������� �*���� �����"��-����'���;%�� �� ����$� %��� ��������� ����� ������������� �* ��� �����(��-�����%��;�%���+���-���� .14��������$���������� ����� �* ��� �����)�6��������%��&���������' ��������������������������������������������������������� �*�

6������%��<69+= ��������������������������������������������������������������������������������������������������������� �**��� ��������-���� ;��-���� ;���� ���� %���9.��-.G.����������������� �*���� �����*�3������������ ���������� %���-������������ � ���� %���9.��-.G.�������������������������������������������������������������������������������������� ���

��� �������4����%�����������-����$���� %�9.��-.G.������������������������� ������ ���� !��-�-�%�;E������ %��� �������9.K��%�� ����������������������������� ������ ���� ������������� %�9.K��%������������������������������������������������������������������ �� ��� ���� ������'���������%��������������3�G:���������������������������������������� ��"��� ���� �@�����;�-���� ;����% �� ���� ?������������������������������������������� ��(��� ���� "����������������$�� �� ���%�������������&�% �� ����' ������� ��(��� ���� (����������������$�� �� ��9.K��%�� ��������������������������������������������� ��)

+��� �������������������������������������������������������������������������������������������������������������������������������� ������ ���� )�@��� ������;����� ������� ������������ ����������? ����� ������ ���� ��������������������������������������������������������������������������������������� ������ ���� *�9�3��%����&����������? ��������������������������������������������������������� ��*��� ���� ��@����-������;����'������������������$������������?����� ������ ����"!������������������������������������������������������������������������������������������������ ���

��� "�###� �+/��������7������������������������������������������������� �!�

&�����'�6�� 5�*���.��+������� ���������������������������������������������������������������������!�!��� ����"��B�������������&��%-������'��������� � ���������&�������� �<8�����������:C�����2�6����$�= ��������������������������������������������������������� !"

��� ����"��/�����������%���� ����������������������������������������������������������������������������� !(��� ����" �2%���������������� �%����������'�������������� ���������������� !���� ����""�B������������'���������&��%-������'���������<����%�3�%����= ������������������������������������������������������������������������������������������������ !*

��� ����"(�6���%�-���$� ������������������������������ �����������&�������� ��3���������������� ����������������������������������� �!

��� ����")�3������������-���������$�������� ���������������������������������� ����� ����"��3���������������&��4����������%���� ������������������������������� � ��� ����"*�3��������������������'���� ��$��$��������������������������� �"��� ����"��D��������������� ������ �3��%��� ��������������������������������������������� �"��� ����(!�3�������� ����%���� %���-����� �������$����9.��-.G.O��������%� ������%�$����%�#4D��-�%� ���������� ��/���'���������������������������������������������������������������������������������������������������������������������� �(

��� ����(��3�������������������&�%������������� ������� ���������%���3����� ���������������������������������������������������������������������������������������� ��

Page 7: C++Builder 2006. 222 gotowe rozwiązania

� ���������� ����� �������������������

��� ����(������������������&����� %�������� ������������������������������������������ �*��� ����( �������������$������������������ ��������:������������������ �!��� ����("�P����%��3��%��� ����������������������������������������������������������������������������� ����� ����((�6�%���������������������$����� ��������������������������������������� � ��� ����()�6�%���������������������$�������� ���������%� ����������� �"

&�����'�2�� ��/����.��$11 ��������������������������������������������������������������������������������! ,/���� ��-�-�������.BB��������������������������������������������������������������������������������������������� �*

��� ����(��8��������-�-�������.BBM������������ � ������������������������������������ �*��� ����(*�4�������� ������-�-������.BBM����������� ��������������������������� ���� ����(��.����������%������-�-������.BB����������������������������������������������� ��� ����)!������%�������-�-�������� � ����%������%����� ����-����� ������� ����������������������������������������������������������������������������������������������������� (

��� ����)��+���������� �3����+����������������������������������������������������������������������� )/����-�-�������.BB ����������������������������������������������������������������������������������������������� *

��� ����)��@������ ��;���� �-�-�������.BB? ���������������������������������������������� *��� ����) �3����������-�-�������.BB������ ����� � ���� ����������������� "�

��������������������� ������������������������������������������������������������������������������������������������ " ��� ����)"����$��������-�-�������.BB������ ������ 9�������������������� ""��� ����)(����$�������������������������%��3��%���P��3��%����!! ��� "*

&�����'� �� 4���*��+���)������������7�������/���)��������:; ������������������������!�!926 ������������������������������������������������������������������������������������������������������������������������������ (

��� ����))�3�����������-�����926%��������������&����&������ ��������� ("2��%������-����&�2B:��������������������������������������������������������������������������������������������� ((

��� ����)��4����������%������-����� ��������������������������������������������������������������� ((��� ����)*��-���� ��;�%� %���������7 ����������������� ���������� ��������2B: �������������������������������������������������������������������������������������� ()

��� ����)��3�������������� ����� �%� ���������� ������$���� ������� (���� �����!�+��� �������%� ����%����$��-���������������%� ������������������� (*��� �������.�����������%������-����� ���������������������������������������������������������� (*

���������� � ��������������������������������������������������������������������������������������������������������������� (���� ������������G������ �������������������������������������������������������������������������������������� )���� ����� �7 ������������������������� �:,����� ��������������8:,�������������� ��������������������������������������������������������������������������� )�

��� �����"�7 ������������������������� �:,����� ��������%G������FF>������C�2- ����2%�������������������� ������������������������������������� )"

��� �����(�#���'�������������� �:,������� ��%����������'���������������� �<����%�G������FF9�����2- ���= ���������������������������������������������������� ))

��� �����)�#���'������������%������������������� ����������������������������������� )���� �������:������������%���'���������������� �������������������������������� )���� �����*�����������������%����$���'����������������� ������������%���'������ �������������������������������������������������������������������������������� )�

��� �����������������%���'�����������������%����$���$�������� ���������� ������������������������������������������������������������������������������������������������ �!

��� ����*!�:%� �%���'����&����':,����������� ����������8:,�������������� ������������������������������������������������������������������������������������������������ ��

��� ����*��5��$���������%�����������������8:,�������������� ��������������� � ��� ����*������������������ ������������'�����������':,���� ������� �"��� ����* �#���'�������������� �6��������3��%��������������$�%����������-���������������� ��$� ���������������������������������������������������������������� �(

��� ����*"�3������������� �3��%���������%��������%�������������%����������������������������������������������������������������������������������������������������� �)

��� ����*(�3���������������%�-�� ��$�%��������3��%� �������������������������� ��

Page 8: C++Builder 2006. 222 gotowe rozwiązania

�������� �� �

��� ����*)�����������-�� ��$�%��������3��%� ���������������������������������������� ����� ����*����������������������������$�������%��������3��%�%���'���� ����������������������������������������������������������������������������������������������������������� �*

��� ����**������������������ ��%��������3��%�%�����������85��':%��-��� �����'����<������� ����������������������=���������������� �*

��� ����*��/���������������������$����$������������%���������3��%��������������������������������������������������������������������������������������������������������������������� ��

��� �����!�4��������������� �2B:����$� %����+�������:,������ ��������������� *!��� �������������������������� � ��������������������������������������������������������������������������� *�

��� ���������� �������������������������� � ������������������������������������������������ *���� �������8�������������������������� � ����������������������������������������������������� *(

����C�P�������������������������������������������������������������������������������������������������������������������������� *���� ����� �������������������������C�P���� �����'%����������3�� ��������������������������������������������������������������������������������������������������������������������� *�

&�����'� � :���<1������������������������������������������������������������������������������������������!2 5���������$�������������� . �������������������������������������������������������������������������������� ��

��� �����"�+��� �� �$������2���>B�������� ���� �������� � ��%������9QQD���%�� ������������������������������������������������������������������������������������ ��

��� �����(�5���������$��������� <��& � ��=���%�& ��-���������� ����������� �*��� �����)������������$�������������������������������������������������������������������������� "!!��� ������������ ��������������������������������������������������������������������������������������������������� "!���� �����*�5���������$�������������� <����������= ������������������������������������� "!���� �������3�%� -����������%��� �� ��$�� ��������������������������������������������� "!"��� ����!!�2-����-����&����������5��'���������'�����&������������������� "!)��� ����!���������� ����-����� ��������������������������������������������������������������������������� "!���� ����!�������������� � ����������������������������������������������������������������������������������� "����� ����! �5��������������%����&��� %��'������������������������������������������������ "� ��� ����!"�.�%���������� ��'��$������������������������������������������������������������������� "�"��� ����!(�D��%��� ����� ����������������� ��������������������������������������������� "�(��� ����!)�5��'�������������������� ����������������������������������� "�*��� ����!��9���������������&�����������'����'������������������������������������������� "��

������ ������ ��������������������������������������������������������������������������������������������������������������� "����� ����!*�6���������I�� ������J�����&� ��������������������������������������������������� "�"��� ����!��3� ������������� �������������������� ������������������������������ "�(��� �����!�#�$�%������������I�������$�J����%����&���������������������� $�9���� ������������������������������������������������������������������������������������ "��

��� �������+�����$������&�������-�E�-��� ��;������ ��&�� ���������������� "����� �������.�����������������&���������'�������������������������������������������������� " !��� ����� �>��%�����������<���-���= �������������������������������������������������������������� " (��� �����"�#��������������������������������������������������������������������������������������������� " )��� �����(�2 ����������& ��-������������������ �����&� ������ ������������ " *

6�������������&���������������������������������������������������������������������������������������������������������� ""!��� �����)������������� ;����������������������������������������������������������������������������������� ""!��� �����������������$ ���������������������������������������������������������������������������������������� """��� �����*�6$�� ���������������������������������������������������������������������������������������������������� "")

D�-�������>B# ������������������������������������������������������������������������������������������������������������� ""*��� �������.������ �����%�� ���� ������ ��������������������������������������������� ""*��� �����!�4�������������%��� �������������������������������������������������������������������� "(!��� �������8���������������%������������������������������������������������������������������������ "(!��� �������+������%��� ������������������������������������������������������������������������������������� "("

Page 9: C++Builder 2006. 222 gotowe rozwiązania

���������� ����� �������������������

$���.��������������������������������������������������������������������������������������� ���,

$����.�4 #������)������)������)��������$�%������������ ���4��7������=�������������������������������������������������������������������������������������2��-��������������� ������ � ������������������������������������������������������������������������������������������ "(�+������� �D�����%.�C������4��%���!!)���'�����8���� ������������������������������������������� ")�5� ������ �D�����%.�C������4��%���!!)���'�����8���� ����������������������������������������� "))

$����.��� $0$>&:;�������� ����������������������������������������������������������������������������2

�.������ ���������������������������������������������������������������������������������������,�

Page 10: C++Builder 2006. 222 gotowe rozwiązania

���������

����������� ���������������� ���� ��������������������������� �� ������������������������������������������������ !� ��� ��������!������������ ����������������� ����� �������� �������� � ����������������������� �����������"���������� ����� �#���������������������������������$%& ����������������"������������!�������������������������� ��� !������������� ����������������� ��� #���������������"�'���������������(���������������������������������������������������������)������������� ������������������� ����������������������������������%* !���� ������������������������������������ �����������)����������������������+%* "�'����� ������������������� ����������� �����������������)��� �������� "

������!�������������������������,����-,����)������,����.���������� ����������� � ���������� !�� ���)� �#��� ������������!����������+$,���������������������� ���������������"�/�����������������������������������)����� ����������������������������� ������ ���������������������������������)��!�������������-,���)���������������� ����"�0����������������������)��������������������,����-,�������������������������!� ����������������������������!���������� �������������� ������������������������� ����"�'�������������������������)���#���������������������������������������1�,����.!����������� ���������������,����."23'!�������������������������"�/�������� �#��������� ��� ��� ��� ����,����.���������"�'�����������������)��� �� �4�������������������������) ������������ �������� �������������������������������������(�/�����!��������������������������������������!��� ���������� ��� �������!���� ������������������� ���������������������������5

����������������������"�6�����������������������������$78�(�������������!�� ����������������� ���������������� ��� ��"��"�$'&!�29����!�-,����!�:�&��������������������� ���� !�:��!�$�� �!�&84!�,� ���&�� "�$��� ��������������"2������ �� ��� ���������4������!� ����� ����)� ���� � �������������) ���� �"/� ���������������������������!�����������������!�������!�$78���������$%&�� ����� � #���� ��������� ���� �������������������� ����"�/��� ������ � ������#������ ���������� �����:�&;������������������������������������� �"�%��� ��

����������������������������������������������������������5� &������������� ���� ����������������5"5!�����������������4�����!�����������) �������

/�����"

Page 11: C++Builder 2006. 222 gotowe rozwiązania

��� ��� ���� ����������������������

������������������������ ������������� ���������!���������� �������������)�����!������)������ � #"�: ����)��������������������������������!���� ������������������ ������������������55"5 "

��������� ������� �� ������

0��������������������� !������)������������#!� ���� ������������)������ �����������������������������������"�2�������������������� ��!������������)��<"�4��������������������������������������+��� ������ �� ����������� ����!�����)�������������������������������� ���������������� �������������������� �����������!� ��������������������)���������������"�%��������� ��������#���������������������� ����#����� !�������������������������������� ������������������������!����������������������������������������������!���� ������������ ��� ����!������ ���������������������������"%������ �� � ����� ��!� ���� �������� #������)��������� ���)�� �)������ ������ ����������������������������!�� �������������� ������������� #"

��������� ����������������

!��"�����# ���"��"����$���%&��'(��&�����"�&��"��������"� ����������))*������

7�������������������������� �������������������� ��������+==8�� ���������)����������� ��� �������"�6��������� #� �����!�� ��������� ������������������#���� �����>���� ����������������� ������ �������#����������� ��"

�� �'����������������������������� ������� ��!!"�� ��"�/�������������������� ���������� "

�� �%����������������� ���)�������)�����#���$���������������� ������)������� ������ ����� ������55"5 "�,������������ ������ ��������������������������������� ��������������"

�� �/�� ��������������� ������������������������������������������������� �;

����������������������������������������������������������<� 6��������������������������������������������������������%�� ���&������'()�����***+

���������������7��������:"�/��������8�������������������?� ���<@@A "

Page 12: C++Builder 2006. 222 gotowe rozwiązania

�������+�� �%&��'( ���

(�������� � ,-�)�&�����-.�&��#���$��

��

�� ����� �������� ��� ������� �������������������� ��������� ����������� ��������������������� �����������������

� ������� ����� ������� �����

���������������!���"���������#$$��"������!������%&'�� � �������� � �����(����$$�������������������)�*"+����,�� ���-.���(����$$������������������)�*"+����,�� ���/�������0���� �10���� -.���(���!������������������������� �����&�����23�&�.������23�����4������3���(������ ��5��)&�-4����678�����23�8�.������23�����4*�� 67��� ���� ��� ��5�4���"����67$�����������9�:����)�&�����23�&�-.���(����67$����2�� ����� 3)-.��"���!������������������������� ����$$���������������)������ � �,�*2 ��-.;.���5��� �90�<06'��������,�����.��� ���

� ����������������������������� ���� ������ ������������������� ������������������� �����������������

�# �,������� ������������������������ ������55"<"

(�������� � �*�� �����������)�������� ����� �&��� ������

"����������!!67$�����������9�:����)�&�����23�&�-#���9%='7�*8>0�&'��8%9�*8������������9�:����.���?���>����3)1�����������9�:����/��@���)�����������9�:����--.��������������9�:����� A����� B�.��������������9�:������2��� �B9�&$��99*8�$*9'C67�D�9�&$&80E$�*$E%C&*E�D���9�&$&*�F7'F���'8.��������������� ��������������������������9�:������9�5���3��B9�&$�G9'$86F0.�������������������������������9�:�����������F���BHI.��� ������������������ ����������������9�:������&����F���B�J.���������������������� !�����"��������������9�:������7�3���3��B9�&$>0%C$970C'.

���� ��������9�:����B������9�5��������)���23�&�/1�����������9�:����-.������)������9�:����BBK-������ ������.

Page 13: C++Builder 2006. 222 gotowe rozwiązania

��# ��� ���� ����������������������

������)���9�5��������)���23�&�/������9�:����/1�����������9�:����-LB����-������ ��������.�������� �����.;

�, �$���������(� ������55"-;

(�������� � #�����������)�/ ��0�� �����1����)

(����������!!67$����2�� ����� 3)-#��� �A��2����)K/K/���� �E����/���� ���� ��-.����: ��*�� 67�B�2 ���@������3���)���3�� ��-

���������2�� ����� :������+�:�+���� �>����5>���)67$98*M'��%*C-.����� #� ������$���� ���� �� ���� �7���%�� ���3)-.���������/�� ��/"�����/���/@ ���/@����)������ -��� ��������)K��/�K��/�K��/�K��/�K�H/�IN�K-.���� �@� ���������@3��@���2� �����@�@���������@�������:�323�����������������$��� �>����5>���)67$>*&'7A%'E-.�������������$���� ���������$������� �' �"��)67$&'9��$�'��-.���@"�������:�32 3�B����������������� ���%�������� �%��;

�- �0����������)��� #�F�������3�����������"��� ������F�����%�� �/"�>�5���@����������"

�. �'���������� ���������� ���* ��������������������������������������������� ���������� ���������� ������55"B ;

(�������� # %���/�������2���������/���)���������)���&��&����������/���&�� ����������/2�)�/��.��������������3���&�����/)�/��)&������� �&������/� ������/��2.��� )���)�����//������

(����$$���������������!!����������)�*"+����,�� ���-#�����"��@�����: �����+�������: ���*�� 67������23�&�B6��&�)�� ���-.������)L67$�����������9�:����)���23�&�--����2>���� �)4C������ ����O�������P�������������:����4-.������23�8�B2 ��������� ��5�)���23�&�-.������)���23�8�BBC�77-����2>���� �)4C������ ����O���"��P����23���:� ��:������ ����:�4-.������)L2 �>�:������ �)���23�&�/���23�8�--����2>���� �)4% ��+��+�� ����:��*�� 67��� �����2��� ����O4-.���67$����2�� ����� 3)-.��������� B)0 ������ -4*�� 67�4Q)����,- �6������ )67$A'8�%*C-.;

�/ �4���������� �#������� ������������������������������������� ����������� �������"�/������ ������������ ���������� ���* �������������������������������� ��������� �������55"A;

Page 14: C++Builder 2006. 222 gotowe rozwiązania

�������+�� �%&��'( ��,

(�������� , 4�� ������/��2.��/��/�����)������/������������������ �&����

(����$$���������������!!���������)�*"+����,�� ���/�������0���� �10���� -#���2 �>�:������ �)C�77/C�77-.���2 �&������� ��5�)���23�8�-.���8������&�)�� ���/���23�&�-.���9���R���>���� �)K-.;

%���������������������������)���������� ��������������������������������������� �������"�/������������������������������������������ ���������������� ������������������������������������� �����������"����� �)�5��� ���6�>� ��������6��&� � �� ������ ���� ������ ��� ����� �� ��������������������������� ���� �������������2 ��������� ��5� !����������������������������#�� ������������������������������������������2 �>�:������ � "�6���� #�����)�!��� ������� � ���������� �)���������+��� ����������������� ���������) ������������������������������"�/� �����������������������!���� ��������������� �� ����!��������������)��������!� ���� ���������� ���� �����������������-!�������������������������������!��������������� ��� ���������67$����2�� ����� 3"

�������������������!����������������������� �������!��������� ������������������������-C-!����������� ��� �������������������)������������������"�0��������������������� ���� ������#� �������� ���!� ���� ���� ��� ������ �����!� �� �� ����) � ��� ��������������� �������#��� �����������)�����B"�/���������� �������������������)�� �� ������������������ ��������BCB!������������������)��� ���� ������ ����� ���� ����� ������� � � ����)��������� ��� ������ ��� ���� ����������������!��� ������� � ��� ����������������) "�/� ��� �����������)��� ��������� ����������� ��������������������������������������������������)��� ��� �� 55"5 !� ����� ����� � �������� ��������� ���� ������� �� � ��� ������������ ����"�+������������������� �����D�'���������������� ���������������������)�����A������� ������)��������������������������������������� � ����������� ����������������������������������� "�,�� ��������������� �����������������!�����������������������)�� �(��� �� �� �������������67$����2�� ����� 3"

����������������������������������������������������������-�/������� ��E"��������)��!� ����� �����,����� ���#������ ����������������!�� ��������

������#������������������������������������� �� ����"�4���������������������)� ���������������������� ��������������������� ������������������� ������������������������-,! ��� �������"

B�2����������)������������� ��������������!�����������������������������������!�������� ����)��������������)�����"

A�2� � ������ �#!� ��� ��������������������BCB��������� �������� �BCB!����� ������ �������� �� ��������#��� ����) �������������)�� "

Page 15: C++Builder 2006. 222 gotowe rozwiązania

��- ��� ���� ����������������������

0� ����� � ���&������������ ��� ���������/)���� �)����. ���)�)��������.�

�����"&��������+����� 1����"�2����� ��&��������3�4

5�"��� ���"������������������"�

%������� ��������� ���� ���� ����� ���� ������

���� �8����� �8������

:�� ����� ������ �������

%�� ����������� ���������)�� ����������������������������� ��������������������������������������������������!������������������������"�F ��������������� ��������"�0�� ����� ���������������������������������������� ���� �����"�% ������� �>����5>���)67$98*M'��%*C-.!����������������� ����������67$����2�� ����� 3!������������ � �����������"��������!����������� �������������� ��55"5 �������������� ����������������������������) �67$>*&'7A%'E�������������������������)��67$98*M'��%*C "�6� � ��������!�� ����� �������� #!������#�������� �����#"�6���������������� �����������"�0������������������� ���!�������������)���)�� ���� ��� ���� �����!� �� �������� ��)�� � ������������ ���!� ����� ������� � ��� � ���������"�,�����)� �����)� �������������������(�� ����������#������������������"�7��������������������������� ��������������� ��) ����� �����������������"�$ ������ ���������������������������)�!������ �� !������������������������� ����� ��� ������������� ������������� � ��!��� � ��������"�'������������������� ��������#��� ������� ����������������������������!�� ������ �����"�����������) �������������� ������!�������������������� �� ������ �"�+� ��������������� � ��������D�4����������� � � �������������� ��������!��������� ���)��� ����������"�6������������������ ���D�G��������������������!����������������������������(�������������������!�����H�� ����I�������!������������������������������������"�%��������������� ��������������������� �����������"�/��� � � ����������������������������������� �����#�����)�������) �����!����������� ���� ���������������������������� �� !� ��!�������������� ����������)�����!���������������������55"<���)����������������� ����� �� ������������������������������������ "/���������� �������55"-��������� ����������� �� ������� ��������� ��������J

����������������������������������� �����������������������������!�������� �����������������������������;

��������)����/�����/ /���/�� ���/�����-.

$����������������� ��) ����������������)����������������!�������������������������� �����#�H�I ������������ ��� �������)��������)�� �����������)K/K/K- "���������!� ������������������������������ ������� � ����������� ���� ������������#��� �����������"�/���� ����������)��������� ������� �������������K�H���IN�K"�2� � ������ �#!� �������� ������������������ ���������)�����������(������������)��!��������������������������� ����� ��) �������� ����������"�6� � ���� ����� ������ ����������!���������� � ��� ����������������#���������� ������� ������������������������� ���#��������"�4 ����� ��������#����!�������� ��������� ��������������K�H����K�KH������������� ���� ����� "

����������������������������������������������������������J�4�������������������)������������������ � �7���%�� ���3"

Page 16: C++Builder 2006. 222 gotowe rozwiązania

�������+�� �%&��'( ��.

��������� � �����������/�������&�)���/�)�

%������� ������������������������������������������ �������� ������)�������)�� �����!������������.����K������������ ���������������������������� �����)����������������!�������� ��0������������������� ����������L",�� ����) ����� �������)��������)�� �����!���� ������������� ���������)�����������!��������������) ������������"�0�����) ������)�������������������

����0���������������)������� K�H!�������� ������ ���� IN�K������� ������� "�������)��������)�� ����������������� ����������������������"�7�������������

������������������������ ����� �K!����� ��������������� �!����� ���������)�� ���������)����������������������������)��� ����� ��������� "�%������������������������������������������������������ ������������� � ����������� �������� �>����5>���)67$>*&'7A%'E-. "�'����������������#�� ���������������������)����������)����������������"�/�������������������������������������������������������������"�4����67$����2�� ����� 3�� ������ �� �������� �' �"��)67$&'9��$�'��-.!��������) ������������ ��!���������� ��������� ������ ��) ������������������������������������������������)�������"

%������� �!������������!����������������������������������������������"%���������� ���� ������������ �����"� 6� � ���������������������� �������#��)�������� ��������)������ �����.0���)����������������������������������������K !�������������������������������������������)!����������)����������������������������� �������������!� ������������)�������)�� �������������������� ����!� ��������� ���� ������������)��� ����) ����������������� ��������������)�����.��E@������������������������������������������������������� ���� ��� ��������� ��)����. "������������ �������� ������ ���������� ����� ���������� ����� �� ����� ���������� �������� ,��� � ���������������������������!������� ����������#������������������ "�F �����������������������������������������������"��������������������� !������� ��� ������������������"�%�������)������������� �����������#�����������)��;������ ������ ��������������!������� ���)� ���������!������� �� �������� ��� ������� ������ ���������� ��������� ����������� ��� ����� (� �����)������������������������������������������"�4������� ����������� ���

����������������������������������������������������������L� %��� �������#����� !� ������ �� ��K�������������������)�������"�������������������� ����

�������������� �������� ������ ����������"�%�������������� ��0!��������������������H����I!�������������,����-,�H�����I"�,�� ���������)�������)�� ����������������� ��!������� ���������������������������������)�� ������������ �����������������"

Page 17: C++Builder 2006. 222 gotowe rozwiązania

��/ ��� ���� ����������������������

��������)���������������������������� ������ ������������-C- "�'��������������)���������� �������������!����������������)��������������������������������������"

!��"�����, ���������$�����&+�����"2��3"�6��4 !���3"�� �$��������

�� �,�� ����������� �83��+��� �������������������� �������55"J"

(�������� - 7& ����������)������� ��

�������������!���"���������#$$��"������!������%&'�� � �������� � �����(����$$�������������������)�*"+����,�� ���-.���(����$$������������������)�*"+����,�� ���/�������0���� �10���� -.���(���!������������������������ �����&�����23�&�.������23�����4������3���(������ ��5��)&�-4����678�����23�8�.������23�����4*�� 67��� ���� ��� ��5�4���"����67$�����������9�:����)�&�����23�&�-.���(����67$����2�� ����� 3)-.���(����$$���������83��+��� �)-.��"���!������������������������� ����$$���������������)������ � �,�*2 ��-.;.

�� �2�� ������������������ ���������� ���������55"L"�'���� ���������������� � ��������)K/K/K-!�� ���������� �����K����� 1"

(�������� . 7�����������)������� ��

(����$$���������������!!83��+��� �)-#����� ���������5KB��K.����� ���������3KB��K.����� ���������@KB��K.

�����9�@3 ���2� ���"�������� ������)67$�*7*8$F���'8$F%��D�67$&'9��$F���'8$F%�-.��� �7���%�� ���3)-.���������@������2���:�B�������@�+�� ���:�2������&���������'('�'('�!)'('"*����������������������)'

�����83��2� ������+:��������������+,&�-./�+01"*����������� �����@����2���@����:�2����+:����)2����:��2�)5/3/@--�����)K/K/@-�+����� ��+�2����+�2�����:���:�� ������2��34��!3'�!�'� '"*������ 3���23�����2��34��3'�!�'� '"*������ 3����23

����������������������������������������������������������1� 0���� ��!� ������������������!�������������)������������������������!�����������"�%������� ���

�������� ���������)������������� ����������� ������������������(��� ����������������)��������������"

Page 18: C++Builder 2006. 222 gotowe rozwiązania

�������+�� �%&��'( ���

�����2��34��'��'� '"*��� �� 3�����:� �����3��2� ����� ��3�����0���"*

�����?�"������ ���:�� ��� ������)-.����2��F������)���23�&�-.;

� �� ����������������������� !��� ����" �����#������$� � �A����5H��������� � ����������"� ��� ��������� �������%������ �A����5�������&���������������'��������������������� �����(�)���������������"��������*+,��#� ������#��������- ��./���� ������! ����������� �� ����������� �A����5����� �A����5H��

�� �0����� ��������������������������� ���� ��� ��������������* 9�� �������������������������������)����������83��+��� ��� �����55"1 "�,�� ���������������������� ������ ��� ���"

(�������� / 7�/�������������������������)��)&�/)�����)�/���/�����,��������)

(����$$���������������!!����9�� �)�*"+����,�� ���-#���83��+��� �)-.;

4�� � 83��+��� �� ������ � ������� ��������� ��������������� ������ �� � ���������� ���� � ��������� ������� ���������� �7���%�� ���3 !������������!� ���)������������������������������ ����������������"�2����������������)��!��������� ����� ������ ����� ������ ������� ���� ������)K�K/K�K/�K�K-.������������������� ���K�K��������"�,�� ������������� �������� !������������������� � ��������)��������)�� �����!������������ ����� ������������� ����������#��

����������"

7������������ �������������� ��� ���������� ����� ����������� �F� � !���� ��� ����� ����)�������������� �' �"�$����������������� �F� � ��������������������! ����!����� !������ � ������ � ������) ��������� �� "�4� ���� �F� � ��� �' ����������� � #� �� � �������������������)����� �������� �A����5!� ���������������������!� ��� ���������� �����������������������!� �����������������)��� �����"0���� ��������� �F� � ������������������������������������������������������� ��� �������"�6� � ������������ �F� � �����67$9*%C��!���� ������������������������������������ ������������"�0�� ���67$7%C'�� ������� ) ���������������������!��� �����������������������������"�:�)��67$7%C'$��8%9������������������)��������� �������������������������������������"�, ��67$�8%0C67'����67$R�0&�������������������� ���������������������������!���������������������� ����� � �������� "�0������������������������� �����������������)� ��������� �F� � )67$�8%0C67'�-!���������� �A����5��� �' �"�/��)� � �A����5��)�����#��� ����� #!������� #!������ ������"!�������������������� ��� �����������!�� �����!����!����������� �������� ��"

Page 19: C++Builder 2006. 222 gotowe rozwiązania

#77 ��� ���� ����������������������

!��"�����- !�&�����������8�����$�����8

0���#������� !� ���������������������� ��� ��������������#�������������� ����� ���� � ���������� ���"� ��������55"- "� 6�������������� � ��� ���� �����

������I,5K������� ���I,3K!����� �����������I������� ���I"�,)�� ������� �������������������������� ����#�������������� � �����I�IH"�$������� ����� ��� � �� ��� �)������ ���� ���� ��)��� �� ������!� � ������� �� ��!� �� ���� ������ ��������#�������!������ ���������� ��������������������55"- >����� ����������#� ����H���)� ��I"�+��� �����������������)D����������� !� �������� ������������������ ���"�%���������������������������������;���� �� ����������� � � ������ � #����� � ������ ����������� �������� ��� � ��� ��� K�����K���������������.���K"�0����������!� ���� ���� ����������������)��������"�$������������������������������55"-������������������)��(��������� ��� �����������"�&������ ��� ����������)���������)����������������� �"�%�����������������������)������������������������ ��� � ������ ���#������������������������� ������55"E "

��������� � ,����/)���.�& �

(�������� � 7������ ���������3���/� �����)������� �&��

(����������!!67$����2�� ����� 3)-#��� �A��2����)K/K/���� �E����/���� ���� ��-.����: ��*�� 67�B�2 ���@������3���)���3�� ��-

���������2�� ����� :������+�:�+���� �>����5>���)67$98*M'��%*C-.���������@����+�:�+���� �7���%�� ���3)-.���������/�� ��/"�����/���/@ ���/@����)������ -���������2��B���� ���� ���)�����-���� �E����.��� ��������)K��/�K��/�2��,K��/�2��,K��/�K�H/�IN�K-.���� �@� ���������@3���@�@���������@�������:�323�������� ����������3����������� �>����5>���)67$>*&'7A%'E-.�����2�������������@3�2���:����������� �' �"��)67$&'9��$�'��-.���@"�������:�32 3�B��:�32� ��� ��2����@ 3������+:���2LLL;

Page 20: C++Builder 2006. 222 gotowe rozwiązania

�������+�� �%&��'( #7�

2����������55"B����������������� ����������������������������"

��������� # 8�.�& �� ��)����/���������/����)���&����

!��"�����. 9����

,���� ������������������������)������������� ������!�����)����������������� ������H�"��������������INN!�INN���K!����������� ���������������� !���� � ������������ ���)��� �� ��� � ������55"5@ "�/����������)���������� ���� ���������� � �)�!����������)�������#������������55"A!���������� ������)��� ����� �������"

(�������� �7 ��/���92��-)� ������� �����/�2���

(����$$���������������!!83��+��� �)-#����� ���������5KB��K.����� ���������3KB��K.����� ���������@KB��K.

�����9�@3 ���2� ���"�������� ������)67$�*7*8$F���'8$F%��D�67$&'9��$F���'8$F%�-.��� �7���%�� ���3)-.���������@������2���:�B�������@�+�� ���:�2���� ���� ������)K�K/�K�K/��K�K-.������� �����������������K

�����83��2� ������+:������ �F� � )67$�8%0C67'�-.����������� �����@����2���@����:�2����+:����)2����:��2�)5/3/@--�����)K/K/@-�+����� ��+�2����+�2�����:���:�� ���� ������H�")INN/INN/K-.���@���3��� �A����5H�)5K/�3K/�@K-.������ 3���23��� �A����5H�)5K/�3K/�@K-.������ 3����23��� �A����5H�)K/�3K/�@K-.��� �� 3�����:� �����3��2� ����� ��3��� �' �)-.

�����?�"������ ���:�� ��� ������)-.����2��F������)���23�&�-.;

Page 21: C++Builder 2006. 222 gotowe rozwiązania

#7� ��� ���� ����������������������

��������� , 4������& ����.�& ��

0������������ ����������������� ����������������� ������������� ����� ������"6������������������ �� ����� ������� ��� �����!� ���������� �� �������������������#!�� ��) ���������������� ��� ����"

!��"�����/ ���������$�����&�����������"2������+�&�4

6����������)��!��� �������������� �F� � )67$�8%0C67'�-��� �' ��� ������� ��#����� �������������� ���������!�� ���� � ���� ��� #���� �����"�,������������������������������!��������� ���������������� ��� ������55"55 "�+�) #������������#����)��"�F� ��� ���������)��������������� �������������� ���;

(�������� �� :)����)���/ ������.�& ��� �2)-������ ���/���/�� �'����/�/� �����/���/����.��)������+3��) � ;��-��&

(����$$���������������!!83��+��� �)-#����� ���������5KB��K.����� ���������3KB��K.����� ���������@KB��K.

�����9�@3 ���2� ���"�������� ������)67$�*7*8$F���'8$F%��D�67$&'9��$F���'8$F%�-.��� �7���%�� ���3)-.���������@������2���:�B�������@�+�� ���:�2���� ���� ������)K�K/�K�K/��K�K-.������� �����������������K

�����83��2� ������+:������ �F� � )67$�8%0C67'�-.����������� �����@����2���@����:�2����+:����)2����:��2�)5/3/@--�����)K/K/@-�+����� ��+�2����+�2�����:���:�� �

������3� ���� ������H�")INN/INN/K-.���@���3��� �A����5H�)�5K/�3K/�@K-.������ 3���23��� �A����5H�)5K/�3K/�@K-.������ 3����23

Page 22: C++Builder 2006. 222 gotowe rozwiązania

�������+�� �%&��'( #7�

��� �A����5H�)K/�3K/�@K-.��� �� 3

�����������2���� ������H�")K/INN/K-.���@���� 3��� �A����5H�)�5K/�3K/�@K-.������ 3���23��� �A����5H�)5K/�3K/�@K-.������ 3����23��� �A����5H�)K/�3K/�I,@K-.������ 3���@�� �

�������2���� ������H�")INN/K/K-.����@��2� 3��� �A����5H�)�5K/�3K/�@K-.������ 3���23��� �A����5H�)K/�3K/�I,@K-.������ 3���@�� ���� �A����5H�)K/�3K/�@K-.��� �� 3

��������2���� ������H�")K/K/INN-.��� ��"���:���� �A����5H�)5K/�3K/�@K-.������ 3����23��� �A����5H�)K/�3K/�I,@K-.������ 3���@�� ���� �A����5H�)K/�3K/�@K-.��� �� 3

�����:� �����3��2� ����� ��3��� �' �)-.

�����?�"������ ���:�� ��� ������)-.����2��F������)���23�&�-.;

0�����������#����������� ���5<��������)��������������)����������������������� ���������������� !�� �����)���)� �#��� ��� ����� ������� ������������ �������������������������� �F� � ��� � ����������� �#��������67$�8%0C67'����������67$�8%0C67'$��8%9� ���67$�8%0C67'$�0C "�/�������� ��������� ��������������� ������������� ����� ���������!��������������������������������������������������������������������� �"�/���������������������� � � #���������)���!����������������� �������������������������� ������������ �������� �������������#�������������)�����������"

2�����������������H��)���I����)�������������55"J ������#������������������� �!��� � ���� �F� � �� �#����������67$7%C'$7**9����"���������55"L "

F ��� ��� � � ����� � ��� ��� � �� ���������� ������ �)������� ���� ��"������� ���"F ��� #��������������������������������� �)�������"�6� � ����������H��I��������"����������������������������� !���������)������������#��������������������������������������������������������"�'����������� � ����������������� ������������������������������������)��������� ��� �������������������������������������������������������!������ ���������������������������"�, ������������ ��D�%����� �� �������� #���������������!����������������� ���"��)����������"�8�������������������)����) ������������ ��������� ������������������"�$ �����������������!�������������) �������������!������)�����������!���������������������� ��������������������D�������!�� ������� ��������������� ������ ����������� !���"���������)��"�6� � ������ ������� � ���������� �!� ����������� � ������������������������� ��!��� �������#����� #!� ����������

Page 23: C++Builder 2006. 222 gotowe rozwiązania

#7# ��� ���� ����������������������

��������� - %� � ��������/���/�� �� ��/2����<�/���.�& �.�

��������� . (�/)��&��� ���������)����&���� "����/����/��/)� ��&���&��������=>7?��- �/�����!!"�� ���

H�)��I������ ������������"�: ������������������������ ��"�4 ������������)����������#������� !�������������������������� ����������"�/������!��� � ��������������#������� ���!����������������������#!�������������#����������������"&����� �� #!���������)� ������������������!��������!� �������������������#����� ����� ��� ������� �����������������"�$���������������� ������ �������� ��������� �������#����� ���� ������!� ���� ���������� �� ����������� ���� ����������������������"

!��"������ ������ ������8���������"6��"$�����

/��������������� ��#�������� ��� ������ ���������� ���������������� ����������"*� �������� ������ ������������������������������)�������� ��������������"�������<@B" "

�� �,�������������� �83��+*������������������������������� �������� �F� � ��� �' ��@������3�83��+��� ��� ������55"5< "

Page 24: C++Builder 2006. 222 gotowe rozwiązania

�������+�� �%&��'( #7,

(�������� �� =����������� ������/��-&������-���

(����$$���������������!!83��+*��������)������5K/������3K/������@K-#�����83��2� ������+:������ �F� � )67$�8%0C67'�-.����������� �����@����2���@����:�2����+:����)2����:��2�)5/3/@--�����)K/K/@-�+����� ��+�2����+�2�����:���:�� �

������3� ���� ������H�")INN/INN/K-.���@���3��� �A����5H�)5K/�3K/�@K-.������ 3���23��� �A����5H�)5K/�3K/�@K-.������ 3����23��� �A����5H�)K/�3K/�@K-.��� �� 3

�����������2���� ������H�")K/INN/K-.���@���� 3��� �A����5H�)5K/�3K/�@K-.������ 3���23��� �A����5H�)5K/�3K/�@K-.������ 3����23��� �A����5H�)K/�3K/�I,@K-.������ 3���@�� �

�������2���� ������H�")INN/K/K-.����@��2� 3��� �A����5H�)5K/�3K/�@K-.������ 3���23��� �A����5H�)K/�3K/�I,@K-.������ 3���@�� ���� �A����5H�)K/�3K/�@K-.��� �� 3

��������2���� ������H�")K/K/INN-.��� ��"���:���� �A����5H�)5K/�3K/�@K-.������ 3����23��� �A����5H�)K/�3K/�I,@K-.������ 3���@�� ���� �A����5H�)K/�3K/�@K-.��� �� 3

�����:� �����3��2� ����� ��3��� �' �)-.;

�� �,������������ �������������������� ���� ����� ����������"

�� �2�� �������������������� �7����:����!���� ��� ������������������ ��� ��� �F� � ��� �' �����������)�����83��+*���������� ������55"5- "

(�������� �� 8�&��/������/��)������/�� &�/���/)� � <����)������� ��

(����$$���������������!!83��+��� �)-#����� ���������5KB��K.����� ���������3KB��K.����� ���������@KB��K.

�����9�@3 ���2� ���"�������� ������)67$�*7*8$F���'8$F%��D�67$&'9��$F���'8$F%�-.��� �7���%�� ���3)-.���������@������2���:�B�������@�+�� ���:�2���� ���� ������)K�K/�K�K/��K�K-.������� �����������������K

Page 25: C++Builder 2006. 222 gotowe rozwiązania

#7- ��� ���� ����������������������

������3��2� ����������������83��+*��������)5K/3K/@K-.

�����?�"������ ���:�� ��� ������)-.����2��F������)���23�&�-.;

!��"����77 % ����� ����3��������� ������8�������������3�

+������� #��� ���������)�������������������� �����"�'����������� � ��������������������� ��� �����������)�� � ��� ��� � ����� ��������� ������"�4�������������#���� ��� � ������;���������������������������� ��������������"�0������ � �������������#����)����!���������� �8���������� ���� � #��� �������83��+*��������!������������������� � �����������������������!�� �����)�������������������"

'������������� ����������� � ��������������������� ���������������������� �������� ����������������� !����� �!���� �����������������!��������� ������������������������������"�6��������������!���������������������� ������� ����������������!���������������!�������� ������ � �������������������������!������������)���)��� ����������#� �����������������"� ���� � ��������) � "�0���� ��������������� �����������!������� ����� �� �������!� ������� �������!� ���������E"�/����� ������������������ ��������� � !�����������������������������)���������!��� ���������������������������)���������� �������������� ��� ���������������������������)��"�/�� ��)������!����������)�����������)��� ���������������"�������������������������� ���� ������������(����������� ������������� ����������)������������)"�6� � �����������������)���������� ��������������������������������������!�������#����� � ������������!�������������� ����� �����������)���"�/�� ��#��� ����!����������������!�������� ��������������)����������������"

0����������!� ��� ������������� ��#��������������������������������������"�%����)������ � ���������!����������������������� #������!���� ���������������������� ���������������� "�/��� ����������������)������������������!�� ��������(������������"���� ����������������������� ��������������#������������������������������� ��55"<"

&������ ��"�3����L"���1"��� ��� ������ ����������#"�$�������� ��� ��������#�������������"�� ��������#��� ��������� !�� ��� �������� ��������#�����)",������� ��������������� ��!��������������������������!��������� ����������������������!�������������������������"

����������������������������������������������������������E�F� ������������� ���������� ���4���%����!����������������� ����� � �)!�� �����������

������ � ����) ��������� "

Page 26: C++Builder 2006. 222 gotowe rozwiązania

�������+�� �%&��'( #7.

0� ����� � % �� <��/)�� ����)&�)���)��������/�������� ��

:��& ������ ��

5" &�������� 4���������� ��������� ��������������

<" %����������� ����� ���������������"��� ������������������������G%%MG%:

7�������������

-" 7���������� %�������)������������������ �����

B" 7��������������������� �������� 7�������������

A" 7������������������ %�������)������������������ �����

J" 7���������������������� 7�������������

L" 7���������������� %�������)������������������ �����

1" 7�������������������� 7�������������

$������������#���������)��������� �� �����������������������!������������#���� ��� �������� ��;

�� �,���������������� ����������9��������� ��!���������� ���� ����� �� ���) ��������)����� ������55"5B "

(�������� �# 7�������)��������� �

�������������!���"���������#$$��"������!������%&'�� � �������� � �����(����$$�������������������)�*"+����,�� ���-.���(����$$������������������)�*"+����,�� ���/�������0���� �10���� -.���(����$$�������������9�� �)�*"+����,�� ���-.���(���!������������������������ �����&�����23�&�.������23�����4������3���(������ ��5��)&�-4����678�����23�8�.������23�����4*�� 67��� ���� ��� ��5�4���"����67$�����������9�:����)�&�����23�&�-.���(����67$����2�� ����� 3)-.���(����$$���������83��+��� �)-.���(����$$���������83��+*��������)������5K/������3K/������@K-.���������9��/������.��"���!������������������������� ����$$���������������)������ � �,�*2 ��-.;.

�� �/�������������������������������� ���������� ������55"5A "

(�������� �, �*�������)�2��& �)�/����

$$���������������!!������)������ � �,�*2 ��-���!������)*2 ��-#���9��BK.������BK.;

Page 27: C++Builder 2006. 222 gotowe rozwiązania

#7/ ��� ���� ����������������������

�� �,�������������� ������������� ������������� �������������� ������� �������� ������� ����9������������ ������55"5J "�%������������������ �������)�����K!����������(����)�����.5@�

(�������� �- (�&� ������������������- ��������)��)/���/��������//�� ��,�����8���

(����$$���������������!!83��+��� �)-#����� ���������5KB��K.����� ���������3KB��K.����� ���������@KB��K.

�����9�@3 ���2� ���"�������� ������)67$�*7*8$F���'8$F%��D�67$&'9��$F���'8$F%�-.��� �7���%�� ���3)-.���������@������2���:�B�������@�+�� ���:�2���� ���� ������)K�K/�K�K/��K�K-.������� �����������������K

������"���3��� �8������)9��/�K�K/���K/�K�K-.���2�:���*G��� �8������)�����/���K/�K�K/�K�K-.���2�:���*=

������3��2� ����������������83��+*��������)5K/3K/@K-.

�����?�"������ ���:�� ��� ������)-.����2��F������)���23�&�-.;

�# �0����������)��� #�<�39��(��2�������������"

�, �0����� �������������������� ���� ��� ���* <�3&�2 ������ ������55"5L "�8 ��������������)��� ���������� ������� ���"

(�������� �. �0>��/�-&�1��/�� �� ����&��� ��������� ���& �.�3����&��2�����)���������-��

(����$$���������������!!����<�3&�2 )�*"+����,�� ���/�E*8&�1<�3/����������������������-#����2�����)<�3-���#�����������A<$'��09'!������)-.�"���:.���������"���3�����������A<$7'��!���9��BH.�"���:.�����������A<$8%6��!��9��QBH.�"���:.�����������A<$�9�!���������BH.�"���:.�����������A<$&*EC!��������QBH.�"���:.

����������������������������������������������������������5@F ��� #������������������N�'������������ ��� #��� �������������������"�/����������� #

��� ����������� ���� � ��������#�� ����)� ��������!����������)� �������������������"�2�� �������#��������������� ������������������������������������� ��� ��"�/������������������������������) �������� ��"

Page 28: C++Builder 2006. 222 gotowe rozwiązania

�������+�� �%&��'( #7�

���;

���83��+��� �)-.;

F������ ����H� �����������)��I!�� ���������#���������)�����������#������� �������������������55"1 "

��������� / 8��/�� �)��/&��<��� 3�������3�&�.�/2���� � �)3�����/�/)�� ����.��)������

!��"����7� !������������ �����

$�� ����������� ��������������������)����������� ����;

�� �/�� ������������������������������������� ���������������� �����������9�@3�+�=!�9�@3�+�G���9�@3�+�?"�/�������������� ����������� �����������@�� ������55"51 "

(�������� �/ :.��� ���� ����������)�/����

$$���������������!!������)������ � �,�*2 ��-���!������)*2 ��-#���9��BK.������BK.���9�@3�+�=BK.�9�@3�+�GBK.�9�@3�+�?BK.;

�� �,����������9�� ����������� ���������������� �������� ������S9�@3�+�=/�9�@3�+�G/�9�@3�+�?T�������������������� �������55"5E;

(�������� �� ,�/�����)�����-��

(����$$���������������!!83��+��� �)-#����� ���������5KB��K.����� ���������3KB��K.����� ���������@KB��K.

Page 29: C++Builder 2006. 222 gotowe rozwiązania

#�7 ��� ���� ����������������������

�����9�@3 ���2� ���"�������� ������)67$�*7*8$F���'8$F%��D�67$&'9��$F���'8$F%�-.��� �7���%�� ���3)-.���������@������2���:�B�������@�+�� ���:�2���� ���� ������)K�K/�K�K/��K�K-.������� �����������������K

������"���3��� �8������)9��/�K�K/���K/�K�K-.���2�:���*G��� �8������)�����/���K/�K�K/�K�K-.���2�:���*=

�������@��� �������� ���� ������)9�@3�+�=/9�@3�+�G/9�@3�+�?-.

������3��2� ����������������83��+*��������)5K/3K/@K-.

�����?�"������ ���:�� ��� ������)-.����2��F������)���23�&�-.;

�� �7�������������� �����<�3&�2 !����� ���������������������� ������� �������55"<@"�,�� �������� ��������� ����� ��#��������� ������)����� ����������������������������������������������� �� ���� �������>����� ������ "

(�������� �7 4�� &�/��)�� <���/)���&.������� �����&��� �)�

(����$$���������������!!����<�3&�2 )�*"+����,�� ���/�E*8&�1<�3/����������������������-#������)<�3BBA<$'��09'-������)-.

������"���3������)������'���3)--���#�������2�����)<�3-������#��������������A<$7'��!���9��BH.�"���:.��������������A<$8%6��!��9��QBH.�"���:.��������������A<$�9�!���������BH.�"���:.��������������A<$&*EC!��������QBH.�"���:.������;���;

�������@��� ������2���� �������@�����������)�������� ��� �)������--���#�������2�����)<�3-������#��������������A<$7'��!��9�@3�+�=BK��.�"���:.��������������A<$8%6��!�9�@3�+�=QBK��.�"���:.��������������A<$�9!����9�@3�+�GQBK��.�"���:.��������������A<$&*EC!��9�@3�+�GBK��.�"���:.������;���;

Page 30: C++Builder 2006. 222 gotowe rozwiązania

�������+�� �%&��'( #��

�������@��� ������2���@����������@���3�������)�������� ��� �)�������--���#�������2�����)<�3-������#��������������A<$7'��!��9�@3�+�=BK��.�"���:.��������������A<$8%6��!�9�@3�+�=QBK��.�"���:.��������������A<$�9!����9�@3�+�?BK��.�"���:.��������������A<$&*EC!��9�@3�+�?QBK��.�"���:.������;���;

���83��+��� �)-.;

%������������� ������ ����� ���� ���������� � H� ������� ����)��I����� �������>���������� �����)������ ��#������ ����)�������������55"E "�,������������������� ������������!�����������������!����������������������������!��������"�2��������������������� ������H����������I���)��������������"�'���!����� ����� � �����)���������������������������������������"�%�������!������������)���!���������������� �����������"����������������������������)���(������� ����� ������� �������������"�����������������������������������������������������) � ������ ������������#�������������������!����������"�:���������������� ���)������!������������������� ������ !������������)�����������������������������) �"�6�����!������� ������ �)������� ����!��������������������������������)����������������-"���������������� ������������������������ �� �������������)�� ����������A"���L"

��������� � 8��/����/������-������ �)��/)��/<��� �/�2 ��&�

!��"����7� !��������8��"�

$������������������������ ���������������������������������������������������"�/�+==8�� ����������������� ��������� �������������#���������������������"�/�������!� ������� ��������� ����������������)������������� !�������������������� � �� ����������� ������ ���� �����������

Page 31: C++Builder 2006. 222 gotowe rozwiązania

#�� ��� ���� ����������������������

���)���!�����������)���)���� �83��+��� �"�&������������������������������ �����������������������!������ ����������� �������H�������I�����������"

�� �*���������������������������������������)�����>)���"

�� �'���������� ���������� ���* ������� ������55"<5 ;

(�������� �� �2)������2)-�����/�)3�&���/�������/)�� ����)�-�������)�:)���>��

(����$$���������������!!�����������)�*"+����,�� ���-#���9��QB�.��������QBK��.���83��+��� �)-.;

�� �0����������)��� #�% ���(����������������������K"

�# �,����������<�3&�2 ���������� �� #��) �����������) ��������������������� �� �������@�� ������55"<< ;

(�������� �� ?�)���/)���&������� ��&��� �)�

(����$$���������������!!����<�3&�2 )�*"+����,�� ���/�E*8&�1<�3/����������������������-#������)<�3BBA<$'��09'-������)-.

������"���3������)������'���3)--���#�������2�����)<�3-������#��������������A<$7'��!���9��BH.�"���:.��������������A<$8%6��!��9��QBH.�"���:.��������������A<$�9�!���������BH.�"���:.��������������A<$&*EC!��������QBH.�"���:.

��������������UVU!��������������URU!���������' �"���BL�������' �"���.�"���:.������;���;

����� �����@3������3

,�� ������������������������������83��+��� ������� ���������)����������������������������* 9�� ������!�����������������������!�� �������������������� ���������5@��� ������������������������� "�'������� �� ���������� ���� �!���)����������������������)�A@�� ������������� ������������������������������������<A "�'�� �������������� �!���������+7'����������� ������������ ����� � �� ��� ��� ��� �1@�?���1@�H�������I���������� "�+� � #�� �����������������+,!���������� ���������!�����������������J@�?�"

Page 32: C++Builder 2006. 222 gotowe rozwiązania

�������+�� �%&��'( #��

6� � ����������������� ���������� � �� ������������������!��������������������#����� ������)����������������������(����������������������������������� �������� �����������������������55"

!��"����7� ��������������+�����&3+��������

2���������������)��������)�� �����;����)������� ��"�/�������������)���������)������ � �������)��� �������������� ��������"�*�� ���!� �������������������)������������������� ���������������� ����������������������)�������������#� ��������������������"�/���������� ��������(�������������"

�� �,�������������� �83��+*��������� � �������)��������)�� �������.K0� ������55"<- ;

(�������� �� �A ������)����)���<������&-��)����.-�/ ��)��3��)�������/)����<������� ���� 3�&�.� �2 �/��)��� ���� &������)&�/)��)��<

�����������������83��+*���)��@�����!�� ��-."� � �F� � )67$7%C'�-. �A����5H�)K/K/K-.� �A����5H�)��@����/K/K-.���*=/�2����2� �A����5H�)K/K/K-.� �A����5H�)K/��@����/K-.���*G/���� ��3 �A����5H�)K/K/K-.� �A����5H�)K/K/��@����-.���*?/����:����3 �' �.� �.

�� �4�� �83��+*�������)���������������������������� ��������������� �������������� ��������)���!����������������� �����������������)���� ������55"<B "�%�����������)��������������������� �� ���������)�!���������(������� ��"

(�������� �# :)�������������������������&-�������.-�/ ��)��

(����$$���������������!!83��+��� �)-#����� ���������5KB��K.����� ���������3KB��K.����� ���������@KB��K.

�����9�@3 ���2� ���"�������� ������)67$�*7*8$F���'8$F%��D�67$&'9��$F���'8$F%�-.��� �7���%�� ���3)-.���������@������2���:�B�������@�+�� ���:�2���� ���� ������)K�K/�K�K/��K�K-.������� �����������������K

����� ����������������:�����2�����@�� 3����� ������H�")INN/INN/INN-.���83��+*���)5K-.

����������������������������������������������������������55������ ���!��� � ����������������� �����������������������������������)���� �������������������

�������������������������� ����"

Page 33: C++Builder 2006. 222 gotowe rozwiązania

#�# ��� ���� ����������������������

������"���3��� �8������)9��/�K�K/���K/�K�K-.���2�:���*G��� �8������)�����/���K/�K�K/�K�K-.���2�:���*=

�������@��� �������� ���� ������)9�@3�+�=/9�@3�+�G/9�@3�+�?-.

������3��2� ����������������83��+*��������)5K/3K/@K-.

�������������������:�����2�����@�� 3����� ������H�")�KK/INN/�KK-.���83��+*���)5K-.

�����?�"������ ���:�� ��� ������)-.����2��F������)���23�&�-.;

4����83��+*�������)������ ���� ��������"�%�����������)�������� ����� ������ �������������������������������������������� ���!��������������������������������"�, ���������������������)���)�������)�� ������� ��������#������� ��������������� ����� ����"���������55"5@ "�,��������������83��+*��������)����������� ������������� �������!����� ���������������������������)����������������� ������(���������)��!�������� ������ ����������������������������"

��������� �7 :)����)��������)������.-�/ ��)�� ������/��/�� /�������/��������)��&-���������������)3������ �/��&-���/�� /��)�/�����-���

!��"����7# ;������������"����$����

,��������������)��������������� ����!������)���� ����� �83��+��� ���� ���� ��� ��� �������55"<A"�F� ��������)�����������������E@��������� �������������"�/��������� � ���� ��������������������!�� ������������ ������������ ��������� ��)��� �������� ����� � ���������������� � ��� ���!� ����� �������������������� ���������)�����������83��+*��������"�*�����������������������������������55"55"

Page 34: C++Builder 2006. 222 gotowe rozwiązania

�������+�� �%&��'( #�,

(�������� �, % ����������-��.�

(����$$���������������!!83��+��� �)-#����� ���������5KB��K.����� ���������3KB��K.����� ���������@KB��K.

�����9�@3 ���2� ���"�������� ������)67$�*7*8$F���'8$F%��D�67$&'9��$F���'8$F%�-.��� �7���%�� ���3)-.���������@������2���:�B�������@�+�� ���:�2���� ���� ������)K�K/�K�K/��K�K-.������� �����������������K

����� ����������������:�����2�����@�� 3����� ������H�")INN/INN/INN-.���83��+*���)5K-.

������"���3��� �8������)9��/�K�K/���K/�K�K-.���2�:���*G��� �8������)�����/���K/�K�K/�K�K-.���2�:���*=

�������@��� �������� ���� ������)9�@3�+�=/9�@3�+�G/9�@3�+�?-.

������3��2� ����������������83��+*��������)5K/3K/@K-.

�����:���+ �����������3�������)� ���BK.��H.�QQ-���#������ �8������)WK�K/�K�K/���K/�K�K-.������83��+*��������)5K/3K/@K-.���;��� �8������)WK�K/�K�K/���K/�K�K-.�������� �� ������ � ���"����

�������������������:�����2�����@�� 3����� ������H�")�KK/INN/�KK-.���83��+*���)5K-.

�����?�"������ ���:�� ��� ������)-.����2��F������)���23�&�-.;

)�������������������� ����� ���������������������� ���� ���� ����&�"���!�����������

!��"����7, *������"&������"��������������8���

6������� ��������������������� �5EB"���5EA"!����������������������������������� ������)���������� �K����������������0!����� ����K����) ��������"�0��������������������������������������������������������<@@"���������)���������������

Page 35: C++Builder 2006. 222 gotowe rozwiązania

#�- ��� ���� ����������������������

��������� �� %����/2������/��/���������-��.�

�� �����������-"!����� �������� �������#�������������� ������������������"�7��� ����� ��������������������� �����������83��+��� ���������������� ��55"-"

0� ����� � >���������.�������/��:)���>��

:��& ������ ��

5" &�������� 4���������� ��������� ��������������

<" %����������� ����� ������������ 8���

-" 7���������� ������ �������������K������������������������0

B" 7��������������������� �������� 7�����������)�����������)�� �����

A" 7������������������ ��������������� ������� �������� �������

J" 7���������������������� 7�����������)�������������� ���

L" 7���������������� 8���

1" 7�������������������� 7����������� ������������)�� �����

+���� #�������������������� ���������������#!� ������-"������������������� ������������)�� ��� � � ���������������� ��� �� ��������������� ��#!��������� ������������ ��7��:0�"�6��������������� ���������������)�� �����"�%���������� ���) �����������"�/������������������� �����������)K/K/�K-"�$��������������������������������� �����!�����������������������������"�4������� ����� �������)��������)�� �����!���� ���������!�������������������� �������������

����� ����!� ������������)������� ���������� �)K/K/�K- "�������� �������������������� �������!��������������������������!�������� ���������������H������I"4������� � ���� ����������������K!���� ����!���������� ��� ����������� ������ !��������) ���������)��� �����)������ �����.0����"���������55"< "��������������)������������� ��7��:0���������� ������55"<J"

%������ ��7��:0��������#�������������������./0'�������� ����������(1��������������� ��"���#�������� ����� ������'� �����#��� � ���� ������� �(�)����� ������������ �� ���������������"����������2�� ���������+����� ���� �� ����������� � ���������� ����

Page 36: C++Builder 2006. 222 gotowe rozwiązania

�������+�� �%&��'( #�.

(�������� �- (����/��:)���>���/��� �� � �)�� ���������� ����� ��B$C�� �������)/)��������� �� �)���- ���&���)

(����$$���������������!!83��+��� �)-#����� ���������5KB��K.����� ���������3KB��K.����� ���������@KB��K.

�����9�@3 ���2� ���"�������� ������)67$�*7*8$F���'8$F%��D�67$&'9��$F���'8$F%�-.��� �7���%�� ���3)-.���������@������2���:�B�������@�+�� ���:�2���� ���� ������)K�K/�K�K/��K�K-.������� �����������������K

��� ��7��:0�)K/K/�K/��������@� ���:����3�����������K/K/K/������� :�/� ��:���3��:����2� ��+����:�������������K/�/K-.����:���� �:�4��� ��34�:����3�)�����3@��+�-

����� ����������������:�����2�����@�� 3����� ������H�")INN/INN/INN-.���83��+*���)5K-.

������"���3��� �8������)9��/�K�K/���K/�K�K-.���2�:���*G��� �8������)�����/���K/�K�K/�K�K-.���2�:���*=

�������@��� �������� ���� ������)9�@3�+�=/9�@3�+�G/9�@3�+�?-.

������3��2� ����������������83��+*��������)5K/3K/@K-.

�����:���+ �����������3������)&����:�2�*��������3-���#����������)� ���BK.��H.�QQ-������#��������� �8������)WK�K/�K�K/���K/�K�K-.���������83��+*��������)5K/3K/@K-.������;������ �8������)WK�K/�K�K/���K/�K�K-.�������� �� ������ � ���"�������;

�������������������:�����2�����@�� 3����� ������H�")�KK/INN/�KK-.���83��+*���)5K-.

�����?�"������ ���:�� ��� ������)-.����2��F������)���23�&�-.;

Page 37: C++Builder 2006. 222 gotowe rozwiązania

#�/ ��� ���� ����������������������

!��"����7- ������8���������������&�+� ����8�������8����

F�� ���������������������� �������������������� ������� ��������������� ���������������-,"�4 ���������� ������� #������������������(���������� ��������� ��������������� ��!�� �����������������������"�+��� ���!�� ��������������"�/�������������������������������)��������������� � ��7��:0�!������)� ����)���������������������"�2��������������������������� ����������� ������������� �8�����"�'����������������������5<"

7����������� ����������� ��� ������� ���� ��� ���������������������� ��������� ���������������5B" "�/����������������� ������������* >����&�2 !�* >����>�(�!�* >������"

�� �/�) ������������� !��������� ���)��� #��������' �"������������"

�� �,�� ������������������������ ������������� �� ����) ������������������)�� ������������������<�����9��!�<����������!�<�����8!��������������<�����9��!����<����������!�������������������������� ����� ��!��������� ��=K���GK!�������� ����� ������������������� ������������������� �� ��������������� ������55"<L "

(�������� �. �7�������)����/2��� �

���(���!��������������������� �����&�����23�&�.������23�����4������3���(������ ��5��)&�-4����678�����23�8�.������23�����4*�� 67��� ���� ��� ��5�4���"����67$�����������9�:����)�&�����23�&�-.���(����67$����2�� ����� 3)-.���(����$$���������83��+��� �)-.���(����$$���������83��+*��������)������5K/������3K/������@K-.���������9��/������.���������9�@3�+�=/�9�@3�+�G/�9�@3�+�?.���"����&����:�2�*��������3.���(����$$���������83��+*���)��������@����-.�����:��������� ��=K/GK.���������<�����9��/�<����������/�<�����8.������������<�����9��/����<����������.

�� �&������������!����� ��������������������������� ������� �������55"<1"

(�������� �/ (��� <�� ��%����:�'� �- <�&���)+�&��� ��<�2 �/��)�� & ��)�/&�

$$���������������!!������)������ � �,�*2 ��-���!������)*2 ��-#

����������������������������������������������������������5<2���� ����������!�� �������� �������������"�F����������� �7��:0��������)���� �������

����������������)�� �����������!�������������������� ����������)� �������� �������� �8����� "�2������ �)�������������) �"�$������������������������������������;������������!������� �������)������������)N ����������"�'������ �������!�� ��������������) ���"

Page 38: C++Builder 2006. 222 gotowe rozwiązania

�������+�� �%&��'( #��

���9��BK.������BK.���9�@3�+�=BK.�9�@3�+�GBK.�9�@3�+�?BK.���&����:�2�*��������3B�����.���<�����8B�K.�<�����9��BK.�<����������BK.���=KBK.�GKBK.;

�# �/��������83��+��� ������������������������������ ��7��:0��������� ������� ��) #���������� �������)��������)�� ������������������ ������������ ������55"<E "

(�������� �� 7�����/)�� ����� ��/)�� ����������D�3���/�������������2 ��$$�D��������

(����$$���������������!!83��+��� �)-#����� ���������5KB��K.����� ���������3KB��K.����� ���������@KB��K.

�����9�@3 ���2� ���"�������� ������)67$�*7*8$F���'8$F%��D�67$&'9��$F���'8$F%�-.��� �7���%�� ���3)-.���������@������2���:�B�������@�+�� ���:�2������ ���� ������)K�K/�K�K/��K�K-.������� �����������������K

�����:�������� ��7��:0�)K/K/<�����8/��������@� ���:����3��������K/K/K/������� :�/� ��:���3��:����2� ��+����:�������������K/�/K-.����:���� �:�4��� ��34�:����3�)�����3@��+�-��� �8������)<�����9��Q���<�����9��/�K�K/���K/�K�K-.���2�:���*G��� �8������)<����������Q���<����������/���K/�K�K/�K�K-.���2�:���*=

����� ����������������:�����2�����@�� 3����� ������H�")INN/INN/INN-.���83��+*���)5K-.

������@���@���������3

�, �2�� ������������������������������� �������������������* >����&�2 !�* >����>�(�!�* >����������������������������� ����������������� �������55"-@"

(�������� �7 >��.2�&��� ������&���)���//��)�/& �������2�)����)&�/)����������&���$E��������/�������� �/���� �)����&�

(����$$���������������!!����>����&�2 )�*"+����,�� ���/��>����F���� �F���� /����������������������/�� ��=/�� ��G-#���=KB=.���GKBG.;��

(����$$���������������!!����>����>�(�)�*"+����,�� ���/������������������/�� ��=/������ ��G-

Page 39: C++Builder 2006. 222 gotowe rozwiązania

#�7 ��� ���� ����������������������

#����������� B4<�����9��B4Q����������)<�����9��-Q4/�����<����������B4Q����������)<����������-.����������@�����>3�@3BN.������)�������� ��� �)��7���--���#������� ���=B==K.������� ���GBGGK.���������<�����9��B�=��@�����>3�@3.���������<����������B�G��@�����>3�@3.������83��+��� �)-.���;;��

(����$$���������������!!����>������)�*"+����,�� ���/��>����F���� �F���� /����������������������/�� ��=/�� ��G-#���<�����9��QB���<�����9��.���<����������QB���<����������.������<�����9��BK.������<����������BK.�����:�����3:�������)<�����9���BHJK-�<�����9��BHJK.������)<�����9���K-�<�����9��QBHJK.������)<�����������BHJK-�<����������BHJK.������)<�����������K-�<����������QBHJK.;

�- �7���������������������������������������������)� �������)�������)�� �����"�2������� � ����������� �#�� ������������ ���������!���� ��� ��) #��������������������)���"�/����������������� �����������* >����E����!����������� � �������#���� ������������� ���������������������� �������55"-5"

(�������� �� 7���&����������)����&�� �������/ �����3�&�.������� ��/��&�'B$3�C� �2�$+������ ��/2)

� ���� )� ���� ��� �-#������)�� ��� ��K-������ ��.������)�� ��� ��K-������ ��.�������� �K.;

(����$$���������������!!����>����E����)�*"+����,�� ���/������������������/������ ��E����&����/��9�� ��1>����9��/�"����1�� ����-#����� ���������2��BK��.������������+� �� ��@��� ����@3�+��2�@3��:����2����:����3���<�����8B<�����8,)�Q�� )E����&����-,2��-.���83��+��� �)-.;

Page 40: C++Builder 2006. 222 gotowe rozwiązania

�������+�� �%&��'( #��

/������������� �� �������������������������� �����������) ������������������������������� ��=K���GK "�/����������� ��������������������* >����>�(�!��� � ������� �� ������ ����� �����������!�� �������������� � #��������� ��������������������� �� ������������������������������������� �������� �� ��������������������� �������<�����9��������<����������"�/��������83��+��� ����� ������������������ ���������������������� �8�����"�/����������� ��������������������������� ����� ����<�����9��������<������������������������� ����� �<�����9�����<����������!���������!� ���������������� �����"

!��"����7. ����������������3���&�������������

0����� ��������������#���� ������ ��������� �"�������� ��� ������ ��#���� ���������������)����"�/������������������������)������������� ����� �����������)���������������� "�/������������������������ ����������������� �#������������ ��� ��������"���������55"5< "

��������� �� ���������& �.�� �������< ��� ��

�� �4�������������� �83��+*���������������������� ������������ �������55"-<"

(�������� �� 4�&� �)�����&����� �)����)�& �

(����$$���������������!!83��+*��������)������5K/������3K/������@K-#�����83��2� ������+:������ �F� � )67$�8%0C67'�-.

����������� �����@����2���@����:�2����+:����)2����:��2�)5/3/@--�����)K/K/@-�+����� ��+�2����+�2�����:���:�� �

������3� ���� ������H�")INN/INN/K-.���@���3��� �A����5H�)5K/�3K/�@K-.������ 3���23��� ������H�")INN/�IX/K-.

Page 41: C++Builder 2006. 222 gotowe rozwiązania

#�� ��� ���� ����������������������

��� �A����5H�)5K/�3K/�@K-.������ 3����23��� ������H�")INN/K/K-.��� �A����5H�)K/�3K/�@K-.��� �� 3

�����������2���� ������H�")K/INN/K-.���@���� 3��� �A����5H�)5K/�3K/�@K-.������ 3���23��� ������H�")�IX/INN/K-.��� �A����5H�)5K/�3K/�@K-.������ 3����23��� ������H�")INN/INN/K-.��� �A����5H�)K/�3K/�I,@K-.������ 3���@�� �

�������2���� ������H�")INN/K/K-.����@��2� 3��� �A����5H�)5K/�3K/�@K-.������ 3���23��� ������H�")INN/K/�IX-.��� �A����5H�)K/�3K/�I,@K-.������ 3���@�� ���� ������H�")INN/K/INN-.��� �A����5H�)K/�3K/�@K-.��� �� 3

��������2���� ������H�")K/K/INN-.��� ��"���:���� �A����5H�)5K/�3K/�@K-.������ 3����23��� ������H�")K/�IX/INN-.��� �A����5H�)K/�3K/�I,@K-.������ 3���@�� ���� ������H�")K/INN/INN-.��� �A����5H�)K/�3K/�@K-.��� �� 3

�����:� �����3��2� ����� ��3��� �' �)-.;

�� �F��� �������� ����� ���������������� !������ �������������������������������"���������55"5< "

�� �%������������ �������������������� ����!� ���������������������������)��� ��� ������������!������������������� "

+����������� ���� ���) ���#�� �������� ������>����)67$�70�-."�/��������� ������� ���� ��� ������ ���� � ����������������)��"�,�� ������ #�) ���� ���������������67$�>**��"

������� �����+������� �D�&����������������� ������� ���)��D�0�������������������������� ��� �������������#����)�� �� ��� �� ���)��������� ��������"�%���������������������� �� ��!�����������)��� #����������� ����������������� ��������� ���� ������)�� �����"�2�����!��������������������������������������� ����!������� ����������������!�� �������������������� ��!�� ��������������������������� ��� ������������������������������������������)���������"�/� ������������������������� ����� ���"�4������!� �������������� ���)������� ������

Page 42: C++Builder 2006. 222 gotowe rozwiązania

�������+�� �%&��'( #��

������������������ ���������� ����� ������)�� ������������ �����!����������)��������������� ����� ���)�"�:�������� �����������"�/��������������� �������������������� ����������������������� ����������������� �����������!���� ��������������"�%�������������������������� ������������������!���������� ���)�!����������H��������� I��� ���� ������)�� �����!������� �����)����� ����������!��� � ������������������������������� "�7� �������������������� �������������� �����)����� ���� ���!����������� ������ ����� ��#"/����������!� ��� ������������7 !���� ����� ��������������8 ���� ���)�������)��� ������ ���������� ���� ���7�8 !���������� ���������#��� �������������������)������� �"�'����������)��������������� �������!���������������������������������������!���� ������������������������ �"�/��������������� ������������ ���� �#�� �� ����)� ���)�"

'������������������������������������ ��� ����"�,� ��� ������ ����������� �� ���)������)���������"�7�����!������ ��� ���!�� ���������� �������"�0���������!� ������ �������������� ����� ������������ ��������� ����������"'� ���� ����������������� ��� ���� ������ ���������"�F �� ��� ��������������!�������������!��� � ����) �������� ���)�!������������������������������������������������"�0�)� ��!� ������������������������ ���)�!������������������"�6� � ����������������������������������)�� ����� �!� ��� #������ ����������������� ���)���������)������"�/������������������ ��� ������������� � ���)!�����������������"�&�������������� �!� ������)����!�� ��������������������� �"�%�������� �����������)����#��� ����)�� ����� ������ ������������������)�������������������#���)�����7�8 "�0������ � �� ���)���)���������)�!��������������)�������)��� ��������� !�����������������)���

��������� ������ � !������������������������� �)�5-"�&�����)� ������� ����� �������������������������������(���� �� ������)������������������������� �������)�������7�8� ���)���������������������������"

������������������ ����� ����#!���������������� �!� ���������� ������!������� � � ��������������5EL"���<@L"!�����) � ���� ���������������� ���"�2����� � ��������� ������������� ��� �����������(�����������������������!������������������)���������!������ ������)�������������������������� ����)���)�"�'�������� ��������������������#!��� � ���� �����������!���������)�

������������������� �������� �������� � �>����������)���������������� ������� ����������� ��������� ����������������)���!������ �������������������������)������ �� "�:)� ��������������� ������>�������!�������� ��������� ��������������"

0������������������� �� �����) �������� ������� ����"�*)���� �������������������� ��� �����������"

����������������������������������������������������������5-+�����������������#!� ������������������������)�����7����!����������������������#!� �

��������)��� �K�� �)# "�0������7���8�� ���������#�4������� !��������������8�(�+������� "/�����������������������)�������)�� �����!��������������+4K"���� ��7�8���������������� �������������������������� ���)�������� !��+4K���������������������� ������ ����������������� ��� �����!��"�������� ����� ���)����"�������������������� ������������)���� "'��)� ����� �������)��������)�� ������+4K����������� ��������� ��������� ����������"'������� �����H� �� I��� �������������������"