Datum i vreme: 12.01.2018., 13.30
Dobro Došli, Gost! (Prijava — Registracija)
Ubuntu-RS forumi
  • Početna
  • Pravilnik
  • Pretraga
  • Pomoć
  • Planeta
  • Wiki
  • Sajt
  • Kalendar
  • RSS
Nove poruke Današnje poruke Spisak članova Spisak prijatelja
Važno obaveštenje
Izašao je novi LiBRE, broj 47
Ubuntu 17.10 spreman je za preuzimanje

Ubuntu-RS forumi Ubuntu opšta podrška Programiranje v
« Prethodno 1 2 3 4 5 ... 11 Sledeće »

[Rešeno] Python: reagovanje na pritisak tipke

Tema je Zatvorena 
 
Ocena Teme:
  • 0 Glasov(a) - 0 Prosečno
  • 1
  • 2
  • 3
  • 4
  • 5
Niz | Puni Prikaz
[Rešeno] Python: reagovanje na pritisak tipke
Autor Poruka
nidzo732 Nije na vezi
Član
***

Poruka: 190
Dao zahvalnica: 48
Dobio zahvalnica: 26 u 20 poruka
Pridružen: Dec 2010
Ugled: 2
Poruka: #1
[Rešeno] Python: reagovanje na pritisak tipke
Pravim program koji bi trebao da reaguje kad pritisnem određene tipke.

Pseudokod:
Kod:
while True:
    if keyPressed:
        k=getkey()
        #uradi nešto u zavisnosti od toga koja je tipka pritisnuta
    #deo koji se uvek izvršava bez obzira na pritisnute tipke
Ovo bi trebalo da se vrti beskonačno i da ako je tipka pritisnuta uradi nešto. Drugi deo bi trebalo da se izvrši i ako tipka nije pritisnuta i ako jeste. keyPressed bi trebao da bude True ako je neka tipka pritisnuta, a getkey() bi trebao da vrati nešto na osnovu čega mogu da odredim koja je tipka u pitanju. Čime da zamenim getkey() i keyPressed da bi ovo radilo?
03.11.2012. 23.08
Pronađi sve korisnikove poruke
[+]
Goran Nije na vezi
sr.libreoffice.org
*****

Poruka: 774
Dao zahvalnica: 84
Dobio zahvalnica: 166 u 111 poruka
Pridružen: May 2006
Ugled: 10
Poruka: #2
[Rešeno] Python: reagovanje na pritisak tipke
Jedna varijanta je da prebaciš ulazni tok terminala u „sirovi“ (nebaferisani) režim rada i onda čitaš bajt po bajt. Problem je kada se pojavi višebajtni znak, zavisno od rasporeda tastature i kodne strane terminala.

Mana je što ovde ne slušaš da li je pritisnuta tipka već čitaš unos iz terminala, a to nije isto.

Da bi postigao bolju interaktivnost verovatno želiš da koristiš neku biblioteku višeg nivoa zavisno od onoga šta želiš da postigneš, na primer tkinter, curses, PyGObject/Gtk+, PySide...

Либреофис канцеларијски пакет на српском.
04.11.2012. 00.17
Poseti veb stranicu korisnika Pronađi sve korisnikove poruke
[+] 1 korisnik zahvaljuje @Goran za ovu poruku:1 korisnik zahvaljuje @Goran za ovu poruku
nidzo732 (04-11-2012)
nidzo732 Nije na vezi
Član
***

Poruka: 190
Dao zahvalnica: 48
Dobio zahvalnica: 26 u 20 poruka
Pridružen: Dec 2010
Ugled: 2
Poruka: #3
[Rešeno] Python: reagovanje na pritisak tipke
Hvala na predlogu, ali ovaj metod stopira program dok ne pritisnem tipku, a meni je potrebno da program nastavi rad i ako tipka nije pritisnuta.
Goran Piše:Da bi postigao bolju interaktivnost verovatno želiš da koristiš neku biblioteku višeg nivoa zavisno od onoga šta želiš da postigneš, na primer tkinter, curses, PyGObject/Gtk+, PySide...
Sad vidim, imaju neki tutoriali kako da se ovo uradi sa tkinterom. Probaću to.
04.11.2012. 11.40
Pronađi sve korisnikove poruke
[+]
Goran Nije na vezi
sr.libreoffice.org
*****

Poruka: 774
Dao zahvalnica: 84
Dobio zahvalnica: 166 u 111 poruka
Pridružen: May 2006
Ugled: 10
Poruka: #4
[Rešeno] Python: reagovanje na pritisak tipke
Dobro došao u višenitno i event driven programiranje Smile

Problem je što tebi treba da se i tvoj neki kod i petlja koja čeka na unos izvršavaju paralelno.

Jedna varijanta je da u ovoj glavnoj while petlji gde čekaš na unos svaki put pozoveš i malo svog glavnog koda. Funkcije koje žele da se izvršavaju kada se nešto dogodi u glavnoj petlji nekako treba da se prijave i onda imaš listu/hešmapu koda ćeš zvati kada (neke samo kada se pritisne tipka, neke u svakoj iteraciji,...)

Druga varijanta je da odvojiš posebnu nit u programu gde se izvršava to "stalno", a u drugoj niti se izvršava ova petlja. Kada se dogodi unos, te dve niti mogu da pričaju preko nekih zajedničkih promenljivih.

Obično se koristi i jedno i drugo. Vremenom ćeš videti kako ti sve postaje jasnije.

Либреофис канцеларијски пакет на српском.
04.11.2012. 14.31
Poseti veb stranicu korisnika Pronađi sve korisnikove poruke
[+] 1 korisnik zahvaljuje @Goran za ovu poruku:1 korisnik zahvaljuje @Goran za ovu poruku
nidzo732 (04-11-2012)
nidzo732 Nije na vezi
Član
***

Poruka: 190
Dao zahvalnica: 48
Dobio zahvalnica: 26 u 20 poruka
Pridružen: Dec 2010
Ugled: 2
Poruka: #5
[Rešeno] Python: reagovanje na pritisak tipke
Ovo sa tkinterom radi. Tek sam počeo da se bavim pythonom, imam još mnogo da učim. Probaću i sa multithreadingom kad skapiram.
Hvala na informacijama. Stavljam rešeno.
04.11.2012. 16.42
Pronađi sve korisnikove poruke
[+]
« Starije Teme | Novije Teme »
Tema je Zatvorena 


Verovatno Povezane Teme...
Tema: Autor Odgovora: Pregleda: Poslednja Poruka
  [Rešeno] Python, izvršavanje nakon određenog nasumičnog vremena Githzerai 2 803 21.07.2012. 14.25
Poslednja Poruka: Githzerai
Question [Rešeno] Python GUI alat? Karenski 5 2,416 11.09.2010. 21.06
Poslednja Poruka: Karenski
Question [Rešeno] Perl vs. Python? Karenski 13 2,051 07.09.2010. 16.01
Poslednja Poruka: Karenski
  Python [RESENO] silwerhawk 7 1,459 11.10.2009. 18.44
Poslednja Poruka: Punky
  Kako gtk.progressbar u gtk.treeview, python [RESENO] dr.nele 1 1,080 29.06.2009. 13.31
Poslednja Poruka: dr.nele
  Python help. [RESENO] dr.nele 2 1,798 19.08.2008. 17.56
Poslednja Poruka: dr.nele
  Koji Python editor izabrati? [RESENO] AstralliS 8 3,134 31.05.2008. 19.26
Poslednja Poruka: AstralliS

  • Verzija Za Štampu
  • Pošalji ovu Temu Prijatelju
  • Prati ovu temu


Kontakt Ubuntu LoZa Srbije Povratak na Vrh Povratak na Sadržaj Mobile Version RSS Prijava greške
© 2005-2018 Ubuntu LoCo Serbia. Ubuntu and Canonical are registered trademarks of Canonical Ltd.
Powered_by MyBB, © 2002-2018 MyBB Group.
Designed by : ZeRQ and Ubuntu LoCo Serbia
Hosted by mCloud