Autor Wiadomość
Critex v3
PostWysłany: Nie 18:39, 01 Lut 2009    Temat postu: Auto odpowiadacz na GG

Auto odpowiadacz na GG

1. Napisze jak napisać prosty program, który automatycznie odpowiada osobom na gg i powiadamia ich o naszej nieobecności. Będzie pełnił rolę swoistej automatycznej sekretarki.

2. Z komponentów ściągnąć trzeba będzie tylko THGG, ponieważ reszta jest w systemie.

3. Najpierw zróbmy, żeby nasz program łączył się z serwerem Gadu-Gadu. W tym celu wrzucamy komponent THHG na formę. Zmieńmy mu nazwę (name) na 'gg'.

Teraz wstawmy dwa komponenty Edit, który nadajemy kolejno nazwy 'numer' i 'pass'. W Object Inspector editu 'pass' wartość PasswordChar ustawiamy na '*', co zagwiazdkuje nam hasło. Teraz musimy wstawić na formę przycisk (button), który za pomocą danych wprowadzonych z poprzednio wspomnianych pól połączy nas z serwerem GG. Klikamy dwukrotnie na przycisk i piszemy w nim:

---
gg.Number:=strtoint(numer.text); //Pobiera z pola edit numer gg
gg.Password:=strtoint(pass.text); //Pobiera z pola edit hasło do numeru gg
gg.Connect(500); //Łączy z serwerem
---

Jeszcze można dodać przycisk rozłączający nas z serwera podpinającą pod onClick:

---
gg.status:=0; //Ustawia status na Niedostępny
---

4. Teraz zajmiemy się tym, jak wstawić tą auto odpowiedź Very Happy Wrzucamy na formę pole tekstowe (memo) i nazywamy je 'odpowiedz'. Następnie zaznaczamy komponent THHG i w zakładce Events dodajemy do OnMesage kod:

---
gg.SendMessage(ggnumber, odpowiedz.text);
---

5. Dobrym pomysłem byłoby też wiedzieć co i kto do nas pisze, żebyśmy mogli potem odpowiedzieć Wink
Żeby to osiągnąć wstawiamy kolejne Pole tekstowe (memo) i nazywamy je 'wiadomosci'. Wygodnie byłoby wstawić w nie scroolbar Razz Teraz, żeby zadziałało do komponentu THHG akcji OnMessage dopisujemy następujący kod:

wiadomosci.Lines.Add('[' +inttostr(ggnumber) +']: ' +MessageContent);

6. Nie głupie byłoby zapisanie tych wiadomości do pliku podczas zamykania programu. To wcale nie jest trudne w wykonaniu. Wystarczy wybrać formę, przejść do zakładki Events i do procedury OnClose dopisać kod:

---
wiadomosci.Lines.SaveToFile('c:\\logi.txt');
---

7. No dobrze, a jeżeli byśmy chcieli ustawić konkretny status, albo opis? Nie ma sprawy. Żeby mieć opis wystarczy znowu wstawić pole tekstowe i nazwać je 'opis' Teraz wstawić przycisk potwierdzający tę operację i do OnClick podpiąć:

---
gg.Description:=opis.Text;
---

Żeby zmieniać status należy wstawić komponent ComboBox, w Object Inspector do items przypisać po kolei statusy i do procedury OnChange podpiąć kod:

---
case ComboBox1.ItemIndex of
0: hgg1.Status:=1; //Dosępny
1: hgg1.Status:=2; //Zaraz Wracam
2: hgg1.Status:=3; //Niewidoczny
3: hgg1.Status:=0; //Niedostępny
end;
---

Teraz wystarczy, że dodasz jakieś elementy graficzne i masz wyjechaną Automatyczną sekretarkę na GG Wink

Powered by phpBB © phpBB Group
Theme created by phpBBStyles.com