Saako tekstin paikan määrättyä jollain käskyllä?
Saako kääntäessä tulevan ikkunan väriä ja kokoa muutettua?
Mikä käsky vastaisi QBasicin INKEY$:tä?
Näissä kysymyksissä pitäisi aina mainita missä ympäristössä, millä kääntäjällä jne, ohjelmaa käännetään. Yritetään nyt kuitenkin.
lainaus:
Saako tekstin paikan määrättyä jollain käskyllä?
gotoxy(4, 5); // conio.h
lainaus:
Saako kääntäessä tulevan ikkunan väriä ja kokoa muutettua?
Öh? Voisitko kenties selventää.
lainaus:
Mikä käsky vastaisi QBasicin INKEY$:tä?
Suoraa vastinetta ei (melko luonnollista) löydy. Jos kunnon näppishandleria haikailet (kuten veikkaan) niin sellaisen toteutus on melkolailla ympäristökohtaista.
lainaus:
lainaus:
Saako kääntäessä tulevan ikkunan väriä ja kokoa muutettua?
Öh? Voisitko kenties selventää.
Tarkotan ku tol VC++ tulee vaa semmone pien musta ikkuna ni oisko sen kokoon ja väriin mahdollista vaikutaa sillei et siit tulee esim. koko ruudun kokonen sininen ikkuna.
Ja kääntäjä on Visual C++.
Teet varmaankin konsoli-moodi ohjelmia Wintoosalle? Se ikkuna jonka Wintoosa sinulle antaa, on aivan tavallinen konsoli-ikkuna. Sen varmaan jollain vivulla saa kokoruutuun, mutta sen kokoa ei tietääkseni ole mahdollista muuttaa. Värin voinee vaihtaa hieman conio:n käskyillä leikkimällä, tai fillaamalla sen suoraan API:lla. Jottet pääsisi liian helpolla, annan sinulle seuraavan koodinpätkän (clrscr-funktion toteutus Mingw:stä):
void clrscr () { DWORD written; FillConsoleOutputAttribute (GetStdHandle (STD_OUTPUT_HANDLE), __FOREGROUND + (__BACKGROUND << 4), 2000, (COORD) {0, 0}, &written); FillConsoleOutputCharacter (GetStdHandle (STD_OUTPUT_HANDLE), ' ', 2000, (COORD) {0, 0}, &written); gotoxy (1, 1); }
Tuota muokkaamalla voinet viritellä jonkinlaisen "clrscrcolor"-funktion.
Mitä tulee tuohon näppiskysymykseen niin voit käyttää vaikkapa GetAsyncKeyState -funktiota, tai vahtia messageja.
Ehkä sinun kannattaisi luopua konsolin käyttämisestä, jos haluat jotain monimutkaisempaa tehdä. Konsoli on tarkoitettu lähinnä tekstin tulostamiseen ja syöttämiseen.
Tee ohjelmaasi kunnon ikkuna, jonka kokoa voit helposti muuttaa ja johon voit piirtää mitä vain. Visual C++ sisältää muistaakseni valmiin ikkunan luovan pohjan - siitä on hyvä lähteä.
lainaus:
Teet varmaankin konsoli-moodi ohjelmia Wintoosalle? Se ikkuna jonka Wintoosa sinulle antaa, on aivan tavallinen konsoli-ikkuna. Sen varmaan jollain vivulla saa kokoruutuun, mutta sen kokoa ei tietääkseni ole mahdollista muuttaa.
Kyllä konsoliikkunan kokoa voi muuttaa esim. textmode() komennolla, en tosin tiedä millaiset parametri sille pitää antaa mutta kokeilin jotain ja sain pienen ikkunan. Koon muutos onnistuu suoraan komentoriviltä mode käskyllä
mode sarakkeet,rivit oletus on 80,25
lainaus:
Kyllä konsoliikkunan kokoa voi muuttaa esim. textmode() komennolla, en tosin tiedä millaiset parametri sille pitää antaa mutta kokeilin jotain ja sain pienen ikkunan. Koon muutos onnistuu suoraan komentoriviltä mode käskyllä
mode sarakkeet,rivit oletus on 80,25
Juu kyllähän saa aikaan ainakin 80x25 ja 80x50-merkin tilat. Mutta vapaasti ei onnistune, ei ainakaan standardisti ja järin helposti :)
Miksi gotoxy(X, Y); ei toimi minulla ? :S käytössä VC++6...
Saisko jostain ladattuu conio.h:n joka sisältää gotoxy:n...? Mulla on eri versio.
lainaus:
Miksi gotoxy(X, Y); ei toimi minulla ? :S käytössä VC++6...
Saisko jostain ladattuu conio.h:n joka sisältää gotoxy:n...? Mulla on eri versio.
Unohda se conio, jos VC++:aa käytät. Se on DOS:n aikainen kirjasto. Unohda myös konsoli. Jos välttämättä haluat tehdä nostalgista, ADOM -tyylistä softaa, (= tekstipohjaista) niin käytä edes siihen sopivaa kääntäjää. ;)
Aihe on jo aika vanha, joten et voi enää vastata siihen.