abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×

    dnes 14:33 | Komunita

    Bylo rozhodnuto, že Red Hat Enterprise Linux 10, jehož vydání je plánováno na první pololetí 2025, bude už bez X serverů. Zůstane pouze Xwayland.

    Ladislav Hagara | Komentářů: 0
    včera 16:22 | Nová verze

    Mobilní Datovka, tj. svobodná aplikace pro přístup k datovým schránkám pro zařízení s operačním systémem iOS a Android, byla minulá týden vydána v nové verzi 2.0.0. Zásadně bylo zmodernizováno uživatelské rozhraní. Přibyla možnost přepínat aplikaci mezi světlým a tmavým režimem. Současně byl publikován rozhovor QaA: Projekt Datovka očima vývojářů.

    Ladislav Hagara | Komentářů: 7
    včera 13:22 | Nová verze

    Multiplatformní open source aplikace scrcpy (Wikipedie) pro zrcadlení obrazovky i audia připojeného zařízení se systémem Android na desktopu a umožňující ovládání tohoto zařízení z desktopu, byla vydána v nové verzi 2.3.

    Ladislav Hagara | Komentářů: 1
    včera 03:55 | Bezpečnostní upozornění

    Včera skončila upstream podpora PHP 8.0. Podporované verze jsou 8.1, 8.2 a 8.3.

    Ladislav Hagara | Komentářů: 0
    včera 03:22 | IT novinky

    Představen byl herní notebook TUXEDO Sirius 16 - Gen1 s 16,1palcovým displejem s rozlišením 2560 x 1440 pixelů, 8jádrovým CPU AMD Ryzen 7 7840HS a GPU AMD Radeon RX 7600M XT 8 GB. V konfiguraci si lze vybrat až 96 GB RAM. Hmotnost notebooku je 2,3 kg. Koupit jej lze s nainstalovaným TUXEDO OS nebo Ubuntu 22.04 LTS. Cena začíná na 1 699 eurech (41 500 korun).

    Ladislav Hagara | Komentářů: 17
    26.11. 13:11 | Nová verze

    Multimediální server a user space API PipeWire (Wikipedie) poskytující PulseAudio, JACK, ALSA a GStreamer rozhraní dospěl do verze 1.0.0.

    Ladislav Hagara | Komentářů: 24
    25.11. 22:55 | Komunita

    LibreOffice Viewer je zpět na Google Play. Byl tam již dříve, ale kvůli chybovosti byl v roce 2020 odstraněn. Pravidelně aktualizovaný LibreOffice Viewer lze instalovat také z F-Droidu.

    Ladislav Hagara | Komentářů: 1
    25.11. 18:55 | Nová verze

    Byla vydána OpenMandriva Lx 5.0 s kódovým názvem Iodine. Po více než roce a půl od předchozí stabilní verze 4.3. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 5
    25.11. 12:44 | Komunita

    Na čem aktuálně pracují vývojáři GNOME a KDE? Pravidelný přehled novinek i s náhledy aplikací v Týden v GNOME a Týden v KDE.

    Ladislav Hagara | Komentářů: 25
    25.11. 02:22 | Zajímavý software

    Ansel (GitHub) je program pro úpravu digitálních fotografií. Jedná se o fork Darktable. Autorem je Aurélien Pierre, bývalý vývojář Darktable.

    Ladislav Hagara | Komentářů: 56
    Používáte modální textový editor?
     (74%)
     (3%)
     (2%)
     (21%)
    Celkem 269 hlasů
     Komentářů: 8, poslední 16.11. 22:24
    Rozcestník

    Dotaz: jak v C zkontrolovat zda byla stisknuta klavesa, ale na stisk necekat?

    22.2.2010 20:37 1john2 | skóre: 35 | blog: jo12hn | zlín, brno
    jak v C zkontrolovat zda byla stisknuta klavesa, ale na stisk necekat?
    Přečteno: 644×
    Dobry den, pokousim se o vytvoreni jednoduche verze hry tenis pro prikazovou radku. Mam problem se ctenim klavesnice. Potreboval bych, aby hra bezela nezavisle na klavesnici a v cyklu (kazdych X casovych_jednotek ) vykonavala urcite funkce a pouze v pripade stisku nekolika definovanych klaves doslo v vykonani specialni funkce, ktera obslouzi pozadavky uzivatele. v soucasne dobe hra vypada asi takto:
    int main(void){
     init();
     while ( (znak = getch() ) != 'q' ) {
      funkce1(data, znak);
      funkce2(data, znak);
      sleep();
     }
    
    return 0;}
    
    potreboval bych getch nahradit (asi) oprimalne prerusim od klavesnice(ale pouze pro par klaves, ktere pro hru potrebuju), aby hra bezela ve smycce a pouze pri stisku urcite klavesy se ukoncila/vykonala_jinou_akci, ale bohuzel nevim jak se zeptat strycka googla, resp co vlastne hledat..

    diky za kazdou radu honza

    Odpovědi

    AraxoN avatar 22.2.2010 20:49 AraxoN | skóre: 47 | blog: slon_v_porcelane | Košice
    Rozbalit Rozbalit vše Re: jak v C zkontrolovat zda byla stisknuta klavesa, ale na stisk necekat?
    Myslím, že to čo hľadáš, sa volá "ncurses.h".
    AraxoN avatar 22.2.2010 20:50 AraxoN | skóre: 47 | blog: slon_v_porcelane | Košice
    Rozbalit Rozbalit vše Re: jak v C zkontrolovat zda byla stisknuta klavesa, ale na stisk necekat?
    Vlastne, volá sa to "ncurses", include súbor je "curses.h". :-D (dvakrát meraj a raz rež)
    Fuky avatar 22.2.2010 22:23 Fuky | skóre: 52 | blog: 4u
    Rozbalit Rozbalit vše Re: jak v C zkontrolovat zda byla stisknuta klavesa, ale na stisk necekat?
    Příloha:

    A kdyby Tě zajímala jednoduchá ukázka jak s ncurses pracovat tak mrkni na Tetris v příloze. ;-)

    23.2.2010 08:35 1john2 | skóre: 35 | blog: jo12hn | zlín, brno
    Rozbalit Rozbalit vše Re: jak v C zkontrolovat zda byla stisknuta klavesa, ale na stisk necekat?
    diky ncurses sem nasel a pouzivam na kresleni, hezka to vec :) jen sem nikde nenasel jak to udelat neblokovane, dekuju za pomoc :) jdu se stydet do kouta
    pavlix avatar 5.3.2010 17:59 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: jak v C zkontrolovat zda byla stisknuta klavesa, ale na stisk necekat?
    Zdar johne... jedna věc je nečekání na znak konce řádku, druhá věc je neblokující vstup (pokud uživatel nic nenapsal, dělám něco jiného).

    Na to stačí při inicializaci ncurses použít možnosti cbreak/nocbreak (čekání na konec řádku), echo/noecho (vypisování vstupu), nodelay,halfdelay,timeout (neblokující, o zlomek vteřiny zpožděný neblokující, blokující pouze na zadaný timeout).

    Viz třeba "man nodelay".
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    4.3.2010 21:58 drachir
    Rozbalit Rozbalit vše Re: jak v C zkontrolovat zda byla stisknuta klavesa, ale na stisk necekat?
    WINDOW *cosi;
    initscr();
    clear();
    noecho();
    cosi=newwin(80,80,0,0);
    keypad(cosi,TRUE);
    refresh();
    int c=-1;
    while (c==-1)
    {
    refresh();
    c=wgetch(cosi);
    }
    clrtoeol();
    refresh();
    endwin();
    
    printf("%d",c);
    

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.