LyanVu Opublikowano 12 Kwietnia 2014 Udostępnij Opublikowano 12 Kwietnia 2014 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 Więcej opcji udostępniania...
Czarny Ass Opublikowano 12 Kwietnia 2014 Udostępnij Opublikowano 12 Kwietnia 2014 Logiczne, że jak dajesz przejście do kolejnej linii to nie wyświetli się zaraz pod, a tam gdzie się linia zaczyna - "\n" to też znak. Możesz wyjść poza standard C i użyć biblioteki conio.h, wewnątrz której masz funkcję gotoxy(). Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
LyanVu Opublikowano 12 Kwietnia 2014 Autor Udostępnij Opublikowano 12 Kwietnia 2014 ja nie chcę, żeby się wyświetliło zaraz pod tylko zaraz obok(tzn na prawo) również taki sam czteroznakowy prostokąt z "hasztagów" Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Czarny Ass Opublikowano 12 Kwietnia 2014 Udostępnij Opublikowano 12 Kwietnia 2014 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 Więcej opcji udostępniania...
LyanVu Opublikowano 12 Kwietnia 2014 Autor Udostępnij Opublikowano 12 Kwietnia 2014 Myslalem o tym podwojnym rysowaniu ale to się nie sprawdzi w moim programiku. Teraz patrzę to gotoxy to na jakiej zasadzie są rozmieszone kordy x,y w consoli? Tak jakby to byla jedna wielka dwuwymiarowa tablica? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Czarny Ass Opublikowano 12 Kwietnia 2014 Udostępnij Opublikowano 12 Kwietnia 2014 No tak. :) Gotoxy(5,6) przesunie kursor na znak na pozycji 5,6, czyli na twojej dwuwymiarowej tablicy mMapa[6][5]. ;) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
LyanVu Opublikowano 12 Kwietnia 2014 Autor Udostępnij Opublikowano 12 Kwietnia 2014 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 Więcej opcji udostępniania...
Konrad-GM Opublikowano 13 Kwietnia 2014 Udostępnij Opublikowano 13 Kwietnia 2014 @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 Więcej opcji udostępniania...
LyanVu Opublikowano 13 Kwietnia 2014 Autor Udostępnij Opublikowano 13 Kwietnia 2014 No niby tak, ale jak patrzałem na inne rozwiązania to to jest pikuś w porównaniu z nimi ;p Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
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ę