002
08.10.2005, 13:41 Uhr
RedEagle
|
Ich hab hier mal nen Ausschnitt aus meinen Klassen. Die Funktion zeichnet nur die Umrandung.
C++: |
bool window::DrawBorder() { char OBEN_LINKS; char UNTEN_LINKS; char OBEN_RECHTS; char UNTEN_RECHTS; char WAAGERECHT; char SENKRECHT; if(iborder==1) //ASCII-Code für Normale Rahmen { OBEN_LINKS = 218; UNTEN_LINKS = 192; OBEN_RECHTS = 191; UNTEN_RECHTS = 217; WAAGERECHT = 196; SENKRECHT = 179; } else if(iborder==2) //ASCII-Code Doppelte Rahmen { OBEN_LINKS = 201; UNTEN_LINKS = 200; OBEN_RECHTS = 187; UNTEN_RECHTS = 188; WAAGERECHT = 205; SENKRECHT = 186; } else return false;
//Farben textcolor(ibordercolor); textbackground(ibgcolor);
//Die Ecken coutput(OBEN_LINKS, iposX, iposY); coutput(OBEN_RECHTS, itoX, iposY); coutput(UNTEN_LINKS, iposX, itoY); coutput(UNTEN_RECHTS, itoX, itoY); //Die Linien int i; for(i=iposX+1; i<itoX; i++){coutput(WAAGERECHT, i , iposY); //oben coutput(WAAGERECHT, i , itoY);} //unten for(i=iposY+1; i<itoY; i++){coutput(SENKRECHT, iposX, i); //links coutput(SENKRECHT, itoX , i);} //rechts return true; }
|
iposX/Y: Position oben links itoX/Y: Position unten rechts ibordercolor: Fabe der Zeichen für den Rahmen ibgcolor: Farbe des Hintergrundes des Rahmens iborder: 1 = Einfacher Rahmen; 2 = Doppelter Rahmen
void coutput(char zeichen, int posx, int posy); -- MFG RedEagle Dieser Post wurde am 08.10.2005 um 13:47 Uhr von RedEagle editiert. |