Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki

KURS HOME ASSISTANT

Chcesz zautomatyzować swój dom bez skomplikowanego kodowania?
Zastanawiasz się nad wyborem sprzętu, oprogramowania i aplikacji?
Od czego zacząć przygodę z HA w 2025? Co będzie najlepsze na start?

Nasz kurs Home Assistant nauczy Cię krok po kroku, jak łatwo zautomatyzować swój dom i oszczędzić na rachunkach za prąd i ogrzewanie. Bez chmur, bez zbędnych abonamentów. Twoja przygoda z Home Assistant zaczyna się tutaj!

↓↓↓

    Szanujemy Twoją prywatność. Możesz wypisać się w dowolnym momencie.




    Teraz jest 21 kwi 2025, o 05:34


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 7 ] 
    Autor Wiadomość
    PostNapisane: 28 sie 2016, o 11:44 
    Offline
    Użytkownik

    Dołączył(a): 04 paź 2011
    Posty: 8615
    Pomógł: 338

    Jeszcze niedawno dla was programowanie nie rózniło się niczym od magi i mieliście
    nieodparte wrażenie że to ów czarowanie z mleka zarezerwowane jest dla wąskiej grupy maniaków.
    Jak jednak po czasie widac tak nie jest i każdą małpę da się nowych sztuczek nauczyć ....

    Programowac może każdy i dotyczy to każdego , no może nie ciebie i ciebie , ty kolego też możesz
    odpuścić gdyż trzeba na to poświęcić nieco czasu jak na każde hobby by je odpowiednio pielęgnować
    i się czegos nauczyć .

    Delphi się wywodzi z Pascala , którego odmiane Turbo Pascal 5 i 7 niektórzy jak ja mieli nie szczęście
    poznac w szkole .... Pakiet Delpchi stanowi narzędzie typu RAD i teoretycznie jest właśnie narzędziem do
    szybkiego tworzenia aplikacji opartym na dialekcie Object Pascal firmy Borland. Nie jest jednak tak popularny jak C , C++
    i wygodny jak C Sharp. Głównie dzieje się tak dlatego że Pascal jest językiem przeznaczonym do nauki programowania.

    No dobra .... starczy tych wynurzeń. Teraz coś zróbmy tak dla jaj w kilku aktach.

    Akt 1. Obiekty

    1. Odpalamy Delfina i tworzymy nowy projekt

    Obrazek

    i zobaczymy taki pascalowy twór okienny króry już można skompilować
    <klikając na zielony przycisk |> (PLAY) > i będzie wynikiem puste okno ....

    Obrazek

    2. Z tool Palete (po prawej na dole) w zakładce standard odszukujemy kontrolkę [OK] TButton
    klikamy go i w dowolne miejsce na naszej formatce ....


    Obrazek

    teraz możemy go sobie dowlnie przenosić po formatce i ustalić rozmiar ...
    Jak się już zdecydujecie gdzie to ..

    3. Klikamy dwukrotnie nasz przyciskj co nas przeniesie do okna ze źródłem ....
    gdzie zobaczymy takie ło coś dziwne :P

    Składnia: [ Pobierz ] [ Ukryj ]
    język delphi
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



    i w ciele po begin wpisujemy Close ... o tak jak poniżej

    Składnia: [ Pobierz ] [ Ukryj ]
    język delphi
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    4. Wciskamy F9 i naszym oczom pokazuje się działający program z klawiszem który go zamyka ...

    Obrazek

    Proste no nie ?? i szybkie ... ale gdzie tu obiekt ??
    Otóż nie potrafię wam jednoznacznie odpowiedzieć gdyż może nieco przewrotnie , ale nim byc wszystko może :)
    Tu w naszym przypadku obiektem jest każdy element jak okno, pole textowe , button ... czyli w tym banalnym programie obiektem jest nasz button ale nasze okno też jest obiektem --> żeby było śmiesznie.

    Oczywiście nasz program jest mało poważny i bezcelowy ale musi i tak podlegać pewnym zasadom dobrego wychowania i pisania czystego kodu i tu ::

    Ważną sprawą jest stosowanie nazewnictwa da obiektów , Nazwy jakie nam proponuje Delfin ... Są powiedzmy do (Y) owsze gdy mamy kilka obiektów niema kłopotu ... ale przy rozbudowanym programie raczej ciężko będzie się odnaleźć w gąszczu buttonów -- button1 ---> button19991991 :) dlatego warto nadawać nazwy jasne i logiczne :

    np nasz przycisk nazwijmy btn_close

    Czynimy to na na naszej formatce i naciskamy F11 gdy już jesteśmy na naszej formatce klikamy na naszym butonie (jak mamy ich więcej) i po prawej znajdziemy Object Inspector

    Obrazek

    interesuje nas tam kilka rzeczy :

    --> Caption --> Tu zmieniamy napis na przycisku (np. na Zamknij)
    --> Name --> To ważne pole gdzie zmieniamy nazwę Button1 na btn_Close (czy inną)

    Obrazek

    To co nieco udoskonalimy nasz hmm program .....

    Na początek nieco kosmetyki ...
    Zmniejszmy rozmiar naszej formatki , następnie dodamy druki przycisk .... Uzyskajmy takie o coś

    Obrazek

    --> Zmieniamy nazwę formatki (tu: Pierwszy program)
    --> Nazwę i napis w butonie co widać na obrazku...

    Wiecie już jak i gdzie :)
    Klikamy F9 i mamy nasz działający program ... no w sumie nie do końca .. bo nasz nowy klawisz klikamy
    a łon nic , ma nas w (Y) zatem zmieńmy to .... robimy to analogicznie jak w przypadku poprzedniego przycisku
    zatem w kodzie klawisza btn_Kliknij wpisujemy :

    Składnia: [ Pobierz ] [ Ukryj ]
    język delphi
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.




    Jak widzicie po kliknięciu pokaże się okienko z wiadomością :) Sprawdziliście (F9) ?? fajne nie ??

    I to tak na szybko wszystko by było byście mogli czekając na poradniki mistrza nad mistrzami i wielkiego guru
    Mirka , tworzyć pomału jakieś tam programiki mniej lub bardziej przydatne , wkażdym razie oswoili się nieco ze środowiskiem i sposobem tworzenia programu.

    W zasadzie jednak nie wszystko .... pamiętacie kawałek kodu z pod przycisku Zamknij ??
    Wpisaliśmy tam close; i działa , niemniej nie jest to eleganckie rozwiązanie, na tą chwilę owszem , ale ...
    zresztą już wyjaśniam ....

    Formalnym zapisem dla metody jest nazwa_obiektu.metoda jak więc widzicie nasze wpisanie samej metody w ciele obiektu czyli close; może być i jest mało eleganckie jak tez kłopotliwe ....
    zmieńmy wiec czym prędzej na poprawną formę zanim Mirek da mi po głowie i ześle do lochu .....



    form1.close;

    tak tak jest prawidłowo moi drodzy ... ale nie jest konieczne gdyż możemy pominąć nazwę formy głównej
    i jej jawnie nie podawać ponieważ nasze form1 jest obiektem domyślnym :) co powoduje że możemy wywoływać jej metody jak close bez podawania jej nazwy.

    Dobra to na tą chwilę wszystko .... resztę dopowie /opowie sam Mirek , ja jako przeciwnik
    międa Delfiniego z grila w sumie i tak powinienem siedzieć Cicho ....


    można Linczować ...

    Załącznik:
    Project1.7z


    Akt 2 Zmienne .....

    Nieco pobawimy sie naszym przykładem ....
    załadujmy go i dokonajmy niewielkich zmian ...

    Jak pamiętacie w przycisku Kliknij użyliśmy funkcji ShowMessage -- a napis przekazaliśmy jako parametr
    możemy to zrobić nieco bardziej elegancko używając zmiennej typu łańcuchowego do której przekazujemy ciąg znaków , który dopiero przekażemy do funkcji czyli zmieniamy nasz kod przycisku kliknij:

    Składnia: [ Pobierz ] [ Ukryj ]
    język delphi
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    na bardziej cywilizowany :)

    Składnia: [ Pobierz ] [ Ukryj ]
    język delphi
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



    Prawda że ładniej wygląda ??

    klikamy F9 i co ?? działa równie dobrze ... zatem jak już wiemy jak zadeklarować zmienną (nie mam zamiaru tłumaczyc dokładnie)
    ale w tym celu deklaracje zaczynamy zawsze od var , następnie podajemy nazwę i typ zmiennej:

    info : string; {tu deklarujemy zmienną info} jak widać w tym wypadku to string czyli typ łańcuchowy

    musimy pamiętac o kończeniu średnikiem ;
    komentarze umieszczamy w klamrach {

    Następnie przypisujemy do zmiennej wartość

    info := ' O dzięki !!';

    i przekazujemy ją jako parametr :

    ShowMessage(info);


    Proste i wygodne , nikomu nie wadzi i jak wszędzie :)
    Dzieki zmiennym możemy wykonywać wiele róznych rzeczy np działania arytmetyczne ....
    zatem do kodu marsz ....

    Naszą Formę zmieniamy by wyszło nam coś takiego :
    Obrazek

    mamy tu 3 labele ,
    2 pola textowe
    i nasze 2 butony gdzie napis na klawiszu Kliknij zmieniamy na Pokaż Wynik


    W polach textowych usuwamy napisy Edit1 itd ... w Object Inspektorze
    we właściwości TEXT, zapisujemy projekt (bo bedzie jeszcze sporo zabawy :)
    możemy kliknąć F9 i zobaczymy takie coś :


    Obrazek

    Tak więc mamy gotowy interfejs programu czas na funkcje ...

    Kilkamy na przycisku POKAŻ WYNIK kasujemy poprzedni kod
    teraz definiujemy 4 zmienne

    Składnia: [ Pobierz ] [ Ukryj ]
    język delphi
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    teraz przypisujemy zmiennym wartości z pola textowego :

    Składnia: [ Pobierz ] [ Ukryj ]
    język delphi
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    uzywamy to konwersji String na Int czyli strtoint :)

    teraz zajmiemy się zmnienną liczba3 i wynik .....

    Składnia: [ Pobierz ] [ Ukryj ]
    język delphi
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    jak widzicie podstawowe funkcje matematyczne to prościzna :)

    i teraz przekażemy wynik do funkcji ShowMessage


    Składnia: [ Pobierz ] [ Ukryj ]
    język delphi
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



    czyli całość wygląda tak :

    Składnia: [ Pobierz ] [ Ukryj ]
    język delphi
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    Klikamy F9 i ....

    Obrazek

    mamy dodawarkę ......


    dalej bawcie się sami .... przed wami jeszcze wiele nauki , ale zawsze to jakiś start ....


    Załączniki:

    Aby zobaczyć załączniki musisz się zalogować. Tylko zalogowani użytkownicy mogą oglądać i pobierać załączniki.

    _________________
    Zbuduj swój system [url=https://helion.pl/ksiazki/w-labiryncie-iot-budowanie-urzadzen-z-wykorzystaniem-ukladow-esp8266-i-esp32-andrzej-gromczynski,wlablo.htm#format/d]IOT[/url]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 28 sie 2016, o 12:22 
    Offline
    Moderator
    Avatar użytkownika

    Dołączył(a): 03 paź 2011
    Posty: 27375
    Lokalizacja: Szczecin
    Pomógł: 1043

    Mamo! A SunRiver to zabiera mi zabawki i się nimi sam bawi i to z innymi buuuuuuuu :?

    A na poważnie - NO I PROSZĘ ;) pierwszy wstęp dla delfinów ... SUPER !

    _________________
    zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 28 sie 2016, o 12:28 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 03 lip 2012
    Posty: 238
    Pomógł: 5

    Ja proponuje taką akcje :)
    Dla starych wapniaków którzy chcieliby a nie mogą z wielu przyczyn przeskoczyć na C# z Delphi.
    Aby pokazać dosłownie z podzielonym ekranem na pół , te same czynności i fragmenty kodu aby uzyskać jakiś efekt ale z lewej w C# a z prawej w Delphi, lub na odwrót jeśli ktoś politycznie to widzi ;) bo my stare ludzie mają tą przypadłość że mózg coraz ciężej nabywa nowe przyzwyczajenia, do tego brak czasu iii jak zawsze odkładamy na później naukę C#. :)

    To tak ode mnie żeby w mrowisku się zrobił ruch ... moim zdaniem.

    ps. w sumie uczyć C# to jeszcze nie problem, gorzej z libsami/komponentami - zdobyć świadomość że w Delphi coś jest tu, a w C# coś jest tam...



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 28 sie 2016, o 13:07 
    Offline
    Użytkownik

    Dołączył(a): 04 paź 2011
    Posty: 8615
    Pomógł: 338

    Co nieco dodałem do postu .... żeby wam więcej pokazać ...


    mirekk36 napisał(a):
    Mamo! A SunRiver to zabiera mi zabawki i się nimi sam bawi i to z innymi buuuuuuuu


    mówiłem że znam Psacale .... żeby nie było :P to ze go nie lubię ... nie znaczy ze nie umiem w nim pisać :P


    xbary napisał(a):
    Ja proponuje taką akcje
    Dla starych wapniaków którzy chcieliby a nie mogą z wielu przyczyn przeskoczyć na C# z Delphi.
    Aby pokazać dosłownie z podzielonym ekranem na pół , te same czynności i fragmenty kodu aby uzyskać jakiś efekt ale z lewej w C# a z prawej w Delphi, lub na odwrót jeśli ktoś politycznie to widzi bo my stare ludzie mają tą przypadłość że mózg coraz ciężej nabywa nowe przyzwyczajenia, do tego brak czasu iii jak zawsze odkładamy na później naukę C#.

    To tak ode mnie żeby w mrowisku się zrobił ruch ... moim zdaniem.


    Może ma to sens ... w sumie piszę się podobnie ...
    kwestia znaczników i pokopanej składni Pascala ....
    ale ... wszystko da się pogodzić

    Niemniej ja już więcej nic nie piszę na temat delfinów ... pokazałem tylko jak szybko coś tam zrobić reszta należy do mistrza MIrka
    i ew ciebie Xbary .... za szary żuczek jestem by tłumaczyć resztę zawiłości ...

    Pokazuję tylko drzwi ... a co kto z nimi zrobi jego sprawa ... zaraz zresztą będą wpisy że siuę chwalę czy coś .. dlatego
    na tym kończę , a napisałem za mało , albo i za dużo na start ,..,..

    _________________
    Zbuduj swój system [url=https://helion.pl/ksiazki/w-labiryncie-iot-budowanie-urzadzen-z-wykorzystaniem-ukladow-esp8266-i-esp32-andrzej-gromczynski,wlablo.htm#format/d]IOT[/url]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 29 sie 2016, o 08:39 
    Offline
    Użytkownik

    Dołączył(a): 02 paź 2015
    Posty: 41
    Pomógł: 1

    SunRiver napisał(a):
    ...
    kwestia znaczników i pokopanej składni Pascala
    ...


    Kwestia gustu, która składnia jest pokopana.
    Np. ja mam na odwrót. Delphi trochę już znam, natomiast składnia C/C++/C# jest dla mnie mniej czytelna.
    Co nie znaczy, że sobie odpuszczę jej poznawanie.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 29 sie 2016, o 14:27 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 25 gru 2011
    Posty: 204
    Lokalizacja: Boguchwała
    Pomógł: 3

    SunRiver napisał(a):
    Pokazuję tylko drzwi ... a co kto z nimi zrobi jego sprawa ... zaraz zresztą będą wpisy że siuę chwalę czy coś .. dlatego
    na tym kończę , a napisałem za mało , albo i za dużo na start ,..,..

    Dla mnie SUPER jak na start, ale za mało. Dodawarkę opanowałem, proszę o następne lekcje. Mirek będzie miał więcej czasu na swoje projety.
    Lochy są zamknięte do odwołania, nie przejmój się.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 29 sie 2016, o 18:49 
    Offline
    Użytkownik

    Dołączył(a): 04 paź 2011
    Posty: 8615
    Pomógł: 338

    Niestety ... na tym zakończyłem :)

    _________________
    Zbuduj swój system [url=https://helion.pl/ksiazki/w-labiryncie-iot-budowanie-urzadzen-z-wykorzystaniem-ukladow-esp8266-i-esp32-andrzej-gromczynski,wlablo.htm#format/d]IOT[/url]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    Wyświetl posty nie starsze niż:  Sortuj wg  
    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 7 ] 

    Strefa czasowa: UTC + 1


    Kto przegląda forum

    Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 0 gości


    Nie możesz rozpoczynać nowych wątków
    Nie możesz odpowiadać w wątkach
    Nie możesz edytować swoich postów
    Nie możesz usuwać swoich postów
    Nie możesz dodawać załączników

    Szukaj:
    Skocz do:  
    Sitemap
    Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
    phpBB SEO