Skocz do zawartości

Drobny problem.


LyanVu

Rekomendowane odpowiedzi

Witam, otóż wpierw pokażę ten oto kawałek kodu:

void kMiasto::OdswiezMapa()
{
for (int y = 0; y < 5; ++y)
{
	cout << endl;
	for (int x = 0; x < 9; ++x)
	{
				switch (mMapa[y][x])
				{
				case pl_Wolne:
				{
								 cout << "##\n##";

								 break;
				}
				}
		}
	}
}

 

i chodzi mi tu o to aby pl_Wolne wyswietliło jako

"##

##" .

Z tym, że \n lub endl przechodzi do nastepnej linii i wtedy nastepne pl_Wolne wypisują się pod tym, natomiast chciałbym aby następne pl_Wolne wyświetliło się zaraz obok w tej powyższej formie ;p Jest na to jakiś sposób?

Odnośnik do komentarza
Udostępnij na innych stronach

No to co to za problem? To samo - gotoxy(). Ale wiedz, że nie będziesz multiplatformowy, bo to jest only for Windows. Możesz też się pobawić z New Curses, to jest i pod Linuxa, i pod Windę i pod Jabłko. ;)

 

Poza tym, drugi sposób, wyświetlać fragmentami.

Możesz wykonać dwa razy ten sam "algorytm" rysowania dla dwóch linii. :)

 

EDIT:

Wiesz jak tego gotoxy() się używa, nie? :)

Odnośnik do komentarza
Udostępnij na innych stronach

Ok, dzięki :) Jakoś pobawię się tym, może dam radę ;p

 

@EDIT:

Gdyby ktoś szukał takiego rozwiązania to napisałem coś takiego(działa :D ):

void gotoxy(int x, int y)
{
COORD c;
c.X = x - 1;
c.Y = y - 1;
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), c);
}

int main()
{
for (int y = 0, y2 = 1; y < 6; ++y, y2 += 2)
{
	gotoxy(1,y2);
	for (int x = 0, x2 = 1; x < 6; ++x, x2 += 2)
	{
		cout << "##";
		gotoxy(x2, y2+1);
		cout << "##";
		gotoxy(x2 + 2, y2);
	}
}
_getch();
}

Odnośnik do komentarza
Udostępnij na innych stronach

@EDIT:

Gdyby ktoś szukał takiego rozwiązania to napisałem coś takiego(działa :D ):

void gotoxy(int x, int y)
{
COORD c;
c.X = x - 1;
c.Y = y - 1;
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), c);
}

Nie lubię tego rozwiązania od twórców borlandowego "conio". Bo nie indeksuje pozycji kursora od '0', co dla języka C/C++/etc jest rzeczą naturalną i powszechnie stosowaną, odwrotną co do Pascalowego '1'.

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...