Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Delphi - problem z funkcją -

jayson66 21 Sty 2016 13:46 420 4
  • #1 21 Sty 2016 13:46
    jayson66
    Poziom 2  

    Witam.
    Piszę program w Delphi, który steruje urządzeniem z przekaźnikami przez port USB, jednak pojawił się jeden problem - nie wiem jak przypisać do przycisku pewną "rzecz".
    Chodzi o to, żeby po naciśnięciu buttona program załączył przekaźnik, ale tylko wted, gdy jest wciśnięty. Załóżmy, że jest procedura1, która włącza przekaźnik i jest procedura2, która go wyłącza.

    coś w stylu: " Jeżeli button1 jest wciśnięty, to uruchom procedurę1, jeśli nie jest, to uruchom procedurę2.

    nie wiem jak zdefiniować funkcję, która spełni taki warunek.
    Czy ktoś jest w stanie pomóć?

    0 4
  • #2 21 Sty 2016 13:57
    kinggustav
    Poziom 19  

    Ale co chcesz uzyskać? Przycisk włącz/wyłącz? Przycisk, którego działanie zależy od innego przycisku? Po co tak? Jeżeli zamiast tego drugiego przycisku użyłbyć checkboxa to będzie bardziej naturalnie. A może chodzi ci o to czy masz włączyć czy wyłączyć w zależności od aktualnego stanu? To wtedy nie potrzebujesz ani przycisku, ani checkboxa tylko stan przekaźnika w zmiennej, najlepiej odczytywany z układu, ale może być i obliczony w programie.

    0
  • #3 21 Sty 2016 14:08
    jayson66
    Poziom 2  

    Nie 2 buttony, tylko jeden :D początkowo zrobiłem to na checkboxie, ale jestem zmuszony zrobić to pod przyciskiem.
    Naciskam myszką na button(i trzymam dalej) -> załącza się przekaźnik, który uruchamia silniczek DC(trzymam dalej) -> (zdejmuję palca z myszki) button się zwalnia, przekaźnik rozłącza silnik.

    Chodzi o to, żeby to działało na jednym przycisku, a stan włącz/wyłącz zależał od tego czy jest naciśnięty w danym momencie

    0
  • Pomocny post
    #4 21 Sty 2016 14:23
    arnoldziq
    Moderator Programowanie

    Każdy przycisk powinien mieć 4 podstawowe zdarzenia, które sterują jego pracą: onKeyDown, onKeyUp, onMOuseDown i onMouseUp.
    Jeżeli przypiszesz odpowiednie procedury do odpowiednich zdarzeń, to problem masz rozwiązany.

    0
  • #5 21 Sty 2016 14:48
    jayson66
    Poziom 2  

    I o to właśnie chodziło! :)

    dzięki, pomoc leci dla Ciebie

    0