Pystyykö C++:ssa vaihtaan tekstin väriä console applicationissa?
En viitsinyt tehdä uutta aihetta niin kysyn tässä samassa, että mitenkä console applicationissa määrätään "cursorin" paikka, että voisin kirjottaa muuallekin kuin muun tekstin perään?
Standardikirjasto ei tuohon ratkaisua anna mutta jos kääntäjäsi tarjoaa conio-kirjaston (conio.h) voit käyttää sen funktioita.
void textbackground(int _color);
void textcolor(int _color);
void gotoxy(int x, int y);
Muista käyttää cprintf:ää printf:n sijaan tai värit eivät välttämättä näy.
gotoxy(1,20);
Linkkeri valittaa tästä että:
d:\c++\ef\graphic.o(.text+0x2ca):graphic.cpp: undefined reference to `gotoxy'
Mitä siis teen?
Edit: Tai siis mikä on vialla?
sisällytä se conio -kirjasto; #include <conio.h>
Tosin tuo conio löytyy oletuksena tietääkseni vain DJGPP:stä, kääntäjän ilmoittaminen on suotavaa.
Ainakin Dev-C++:ssa tuo on myös mukana, MSVC++:ssa hieman vajaampana versiona (taitaa sisältää vain getch():in ja pari muuta näppisfunktiota).
Anteeksi tämä viive, mutta tuli vähän muita juttuja väliin. Kääntäjä on siis Dev-C++ ja olen sisällyttänyt tuon conio:n (kääntäjä kyllä huomauttaa, jos kyseistä kirjastoa ei löydy). Nyt en voi laittaa koodinpätkää mukaan(jos siitä nyt tässä tapauksessa olisi jotain hyötyä) koska olen koulussa eikä ole sitä koodia saatavilla.
kokeileppa tätä: mene projektin asetuksiin ja laitra sinne include kohtaa conio plaaplaaplaa jutut
Siis täh... include kohtaan conio plaaplaaplaa jutut? Eli siis mitä toi plaaplaaplaa tarkottaa?
Eli siis mitä mää kirjotan siihen include riville?
include <conio.h>
Onko näin? en ole itsekkään varma kun olen am
taisiis kokeile nyt ensin laittaa koko koodin ensimmäiselle riville koodi:
#include <conio.h>
jaa'a... toi ohjelma säätää jotain IHAN omaansa ja meni innostuskin kyseisen ohjelman teosta c++:lla. Kiitos kumminkin kaikille vaivaa nähneille.
Kaikki heittää aina kaikki menemään jos ei osaa jotai juttua :(. Surullista...
Ongelman ratkaisu olisi ollut conio.o:n linkittäminen projektiin. Jostain syystä Dev-C++ ei tuota osaa automaattisesti mukaan vetää.
Höh!
Misssäs muuten lukis ton textbackground-funktion väreistä joku taulukko kun arvailemalla on huono yrittää?
(Suoraan BorlandC:n helpistä). Näitä voit käyttää textbaclgroundissa:
Väri = numeroarvo (vakio), vakiot määritelty coniossa (yleensä)
Musta = 0 (BLACK)
Sininen = 1 (BLUE)
Vihreä = 2 (GREEN)
Syaani = 3 (CYAN)
Punainen = 4 (RED)
Violetti = 5 (MAGENTA)
Ruskea = 6 (BROWN)
Harmaa (vaalea) = 7 (LIGHTGRAY)
Mulla noi on ihan sekaisin. Kun laittaa green tulee sinistä ja redillä vihreää. :'(
No pistä muistiin mitä mistäkin tulee, ei kai siinä muu auta.
Mutta mitäs sitten jos jollakin muulla ympäristöllä ne meneekin oikein? ARHG!
Jos haluat tehdä yhteensopivaa koodia, et käytä värejä ollenkaan.
Aihe on jo aika vanha, joten et voi enää vastata siihen.