[ Pobierz całość w formacie PDF ]
.Rozdzia³ zakoñczyliœmy dyskutuj¹c nad sposobemobs³ugiwania komunikatów z pominiêciem zdarzeñ.By³ to d³ugi rozdzia³, alesatysfakcjonuj¹cy.WarsztatWarsztat sk³ada siê z pytañ kontrolnych oraz æwiczeñ utrwalaj¹cych ipog³êbiaj¹cych zdobyt¹ wiedzê.Odpowiedzi do pytañ mo¿esz znaleŸæ w dodatku A.Pytania i odpowiedzi* Tworzenie plików pomocy przy u¿yciu procesora tekstu jest trochê nu¿¹ce.Czymo¿na zrobiæ to w inny sposób?Zdob¹dŸ komercyjny lub shareware’owy program generatora pomocy.Programy tegotypu dbaj¹ o wszelkie szczegó³y, które prawdopodobnie doprowadzaj¹ Ciê doszaleñstwa kiedy próbujesz pisaæ pliki pomocy przy u¿yciu zwyk³ego edytora.Pisanie plików nie stanowi zbyt wielkiej przyjemnoœci dla wiêkszoœci ludzi,niemniej jednak u¿ycie dobrego programu przeznaczonego do tworzenia pomocy mo¿enaprawdê z³agodziæ zwi¹zany z tym ból.Powinieneœ równie¿ wiedzieæ, ¿e corazwiêcej twórców oprogramowania u¿ywa systemów pomocy w jêzyku HTML.Nie jestwykluczone, ¿e w nadchodz¹cych latach pomoc HTML zast¹pi tradycyjne plikipomocy Windows.* Czy muszê umieszczaæ identyfikatory kontekstu w swoim pliku pomocy?Niekoniecznie.Mo¿esz udostêpniæ pomoc jedynie poprzez g³Ã³wne menu aplikacji.Bez identyfikatorów kontekstu w pliku pomocy nie bêdziesz jednak w staniezaimplementowaæ pomocy wra¿liwej na kontekst programu.* Dla jakiego powodu powinienem zawracaæ sobie g³owê obs³ug¹ wyj¹tków?Przez zastosowanie obs³ugi wyj¹tków jesteœ w stanie dok³adniej kontrolowaæ swójprogram w chwilach, gdy bêd¹ pojawiaæ siê w nim b³êdy.* Przechwyci³em wyj¹tek VCL.W jaki sposób mogê odtworzyæ okno komunikatu b³êdutworzone przez bibliotekê VCL, w chwili gdy to ona jest Ÿród³em wyj¹tku.Wywo³aj metodê Application.ShowException, a VCL wyœwietli okno z komunikatemb³êdu.* Czy muszê korzystaæ z Rejestru do przechowywania informacji i ustawieñspecyficznych dla mojej aplikacji?Nie.Mo¿esz skorzystaæ z plików.ini lub dowolnych innych plikówkonfiguracyjnych.Niemniej jednak, Rejestr jest preferowan¹ lokalizacj¹ dladanych aplikacji.Korzystanie z Rejestru bardzo u³atwia klasa TRegistry, mo¿eszwiêc wykorzystaæ j¹ do swoich celów.* Za ka¿dym razem kiedy próbujê utworzyæ klucz, a nastêpnie u¿yæ funkcjiWriteString aby wpisaæ do niego pole danych otrzymujê w efekcie wyj¹tek.Cojest nie tak?Prawdopodobnie do tworzenia klucza u¿ywasz funkcji CreateKey.Funkcja ta tworzyklucz, ale nie otwiera go.Zamiast CreateKey u¿yj raczej funkcji OpenKey, któratworzy i otwiera klucz.* Czym jest komunikat definiowany przez u¿ytkownika?Jest to komunikat definiowany dla prywatnego u¿ytku we w³asnej aplikacji.Przeciwieñstwem do komunikatów u¿ytkownika s¹ komunikaty Windows definiowane iu¿ywane na poziomie globalnym.* Co powinienem zrobiæ, aby uzyskaæ standardowy sposób obs³ugi okreœlonegokomunikatu Windows?Wywo³aj metodê DefaultHandler:DefaultHandler(Msg);QuizW jaki sposób ustawia siê plik pomocy, z którego korzystaæ bêdzie aplikacja?Jak implementuje siê mo¿liwoœæ korzystania z klawisza F1 przez okreœlonyformularz lub okno dialogowe?Jak¹ metodê wywo³uje siê w celu wyœwietlenia indeksu dla okreœlonego plikupomocy?Jakiego typu obiekty mog¹ zostaæ wygenerowane w efekcie powstania wyj¹tku?Czy poprawne jest istnienie wiêcej ni¿ jednego wyra¿enia except za wyra¿eniemtry?W jaki sposób mo¿na wygenerowaæ wyj¹tek?Jak¹ wartoœæ posiada domyœlnie w³aœciwoœæ RootKey klasy TRegistry?Czy po zakoñczeniu operowania na kluczu trzeba wywo³aæ funkcjê CloseKey?Jaka ró¿nica wystêpuje miêdzy funkcjami SendMessage i PostMessage?Jak nazywa siê metoda VCL s³u¿¹ca do wysy³ania komunikatów bezpoœrednio dokomponentu?ÆwiczeniaPrzeprowadŸ badanie dostêpnoœci narzêdzi wspomagaj¹cych tworzenie plikówpomocy.Chocia¿ æwiczenie to mo¿e wydawaæ siê dziwne, mo¿e równie¿ byænajbardziej korzystnym æwiczeniem z zakresu plików pomocy.Stwórz nowy projekt.Dodaj dowolne komponenty do g³Ã³wnego formularza.Ka¿demu znich nadaj inn¹ wartoœæ w³aœciwoœci HelpContext.Do stworzonego projektu dodaj plik pomocy (mo¿e to byæ dowolny plik pomocy).Je¿eli posiadasz oprogramowanie wspomagaj¹ce tworzenie plików pomocy, utwórzprosty plik pomocy dla tego programu.Uruchom program i wciœnij klawisz F1 wchwili, gdy dowolny komponent bêdzie komponentem pierwszoplanowym.Zmodyfikuj program ScratchPad tak, aby korzysta³ z Rejestru Windows.Zapisz wnim nazwê ostatnio otwartego pliku oraz jego pe³n¹ œcie¿kê dostêpu.Spraw, aby program ScratchPad podczas wyœwietlania okien dialogowych Otwórz iZapisz korzysta³ z nazwy pliku i œcie¿ki dostêpu odczytanych z Rejestru.Napisz program, który w chwili klikniêcia na przycisku wysy³a sam do siebiekomunikat zdefiniowany przez u¿ytkownika.Gdy komunikat zostanie odebranywyœwietl okno informacyjne.Do programu z æwiczenia szóstego dodaj funkcje obs³uguj¹c¹ komunikat WindowsWM_MOVE.Kiedy okno jest przesuwane generuj dŸwiêk (przez g³oœnik) orazwyœwietlaj nowe wspó³rzêdne w formularzu.Æwiczenie dodatkowe: Zmodyfikuj program Przegl¹darki plików graficznychz rozdzia³u czwartego „Œrodowisko zintegrowane (IDE)” tak, aby przechwytywa³wyj¹tek w wypadku gdy u¿ytkownik otworzy plik nie bêd¹cy plikiem graficznym.Podsumowanieczêœci IITo by³ intensywny okres nauki.Ale mimo to bawi³eœ siê dobrze, czy¿ nie?Przypuszczam, ¿e w tej chwili wszystkie tryby w Twojej g³owie krêc¹ siênaprawdê szybko.Prawdopodobnie w myœlach wyobrazi³eœ ju¿ sobie jedn¹ lub dwiew³asne aplikacje.Byæ mo¿e zacz¹³eœ ju¿ nawet pracê nad jedn¹ z nich.Mam tak¹nadziejê, poniewa¿ jak ju¿ wiele razy powtarza³em, w³aœnie w ten sposób zdobywasiê prawdziw¹ wiedzê.Jeœli do tej pory nie rozwin¹³eœ jeszcze ¿adnej ideiw³asnej aplikacji nie masz siê czego obawiaæ, wszystko przyjdzie z czasem.Ta czêœæ ksi¹¿ki zawiera mieszankê materia³u.Na pocz¹tku pozna³eœ podstawybudowy aplikacji w Delphi.Mo¿na do woli umieszczaæ komponenty w formularzu,ale kiedyœ w koñcu trzeba przyst¹piæ do pisania kodu.Rozpoczêcie samodzielnychzmagañ mo¿e okazaæ siê zniechêcaj¹ce.Do tej pory by³eœ prowadzony za r¹czkêprzez Delphi.Nadesz³a jednak pora opuœciæ gniazdo.Dowiedzia³eœ siê w jakisposób dodaje siê do kodu w³asne funkcje i pola danych
[ Pobierz całość w formacie PDF ]
Darmowy hosting zapewnia PRV.PL