Skocz do zawartości

Mimek

Użytkownicy
  • Postów

    649
  • Dołączył

Odpowiedzi opublikowane przez Mimek

  1. Spróbuj manualnie pobierać znaki z klawiatury np. przez getchar aby rozpoznawać pojedyncze znaki.

     

    Rozwiązałem to po chamsku, sczytując z klawiatury poszczególne komórki tabeli, a po sczytaniu, tworząc obiekt. Omijam sczytywanie z jednego strumienia w ten sposób. Po każdym odczycie z klawiatury zatwierdzonego enterem, przeskakuje do następnej komórki.

  2. Bodajże input stream również rozdzielany jest poprzez spacje, tj.

    int a, b, c;
    cin>> a >> b >> c;
    cout<<"a = "<< a<< "\n"<<"b = "<< b<< "\n"<<"c = "<< c<< "\n";
    // #>10 20 30
    // a = 10
    // b = 20
    // c = 30

     

    istream jest rozdzielany przez spacje, to się zgadza, ale pracuję w tabeli na wzór excela, tylko pod konsolą, i chciałbym zrobić obsługę klawisza TAB. Próbowałem z ReadConsoleInput, ale też nie działało.

     

    Jakieś jeszcze pomysły?

  3. Witam serdecznie :)

     

    Napisałem sobie metodą z przeciążeniem operatora strumieniowego:

    GrDziekanska & GrDziekanska::operator >>(std::istream &stream) {stream >> NazwaKierunku >> Wydzial >> RokStudiow >> Semestr >> Nr; Oznaczenie+=Wydzial+'/'+NazwaKierunku+'/'+'R'+itos(RokStudiow)+"/S"+itos(Semestr)+"/G"+itos(Nr); return *this;}

     

    Ale mimo poprawnego działania kodu, nie uzyskałem oczekiwanego efektu.

     

    Czy jest możliwość uzyskania, żeby podczas wpisywania grupy dziekańskiej do tabeli, naciśnięcie klawisza ENTER lub TAB powodowało nie przejście do nowego wiersza lub wstawienie standardowego tabulatora poziomego, ale wywołanie funkcji GoToXY(x+15, y)?

     

    Próbowałem to osiągnąć przez użycie getch():

    tab = getch();
    if(tab == 9)
        O->GoToXY(O->GetX()+15, O->GetY());

    Ale niestety, nie działa w trakcie, gdy metoda z operatorem jest wywołana.

     

    Proszę o pomoc i pozdrawiam :)

  4. Witam,

     

    udało mi się stworzyć klasę okno, przetrzymującą podstawowe informacje o oknie konsoli, stworzyłem metody do ustawiania rozmiaru okna oraz podawania pozycji kursora myszy. Problem zaistniał w sprawdzaniu, czy LMB został naciśnięty.

     

    Mój kod:

        bool ifclick()
        {
            DWORD cNumRead;
            INPUT_RECORD bufor;
            ReadConsoleInput(stdOH, &bufor,1, &cNumRead);
            if((bufor.EventType == MOUSE_EVENT)&&(bufor.Event.MouseEvent.dwButtonState == FROM_LEFT_1ST_BUTTON_PRESSED))
            {
                return true;
            }
            else return false;
        }

    .

    stdOH jest oczywiście zadeklarowana.

     

    Niestety, przy sprawdzaniu w main():

    if(test.ifclick())
    cout << "KILK";

    funkcja nie działa. Czy ktoś wie, dlaczego tak jest?

     

    Edit: Zapomniałem:

     

    test to oczywiście obiekt klasy okno.

  5. Wielkie dzięki, Konrad, za szybką odpowiedź. Niestety nie będę mógł z biblioteki Twojego autorstwa skorzystać, bo jest to z góry zabronione. Ale i tak dzięki wielkie za pomoc. Czy mógłbym liczyć na dalsze wsparcie? W stworzeniu zwykłej tabeli w konsoli, dwóch kolumn, albo czegokolwiek...

  6. Witajcie, dawno mnie tu nie było :)

     

    Potrzebuję pomocy w stworzeniu interaktywnej tabeli w aplikacji konsolowej w C++ wykorzystując jedynie funkcje z windows.h.

    Nie zależy mi na napisaniu tego przez kogoś, tylko na pomocy w zrozumieniu konsolowych funkcji WinApi.

    Czy byłby ktoś w stanie wytłumaczyć mi, na jakiej zasadzie podzielić konsolę na obszary, które mogłyby reprezentować np. obiekty jednej klasy? Ważny jest właśnie obiektowy opis elementów konsoli. A tu przykład znaleziony gdzieś w odmętach sieci: http://www.hanselman.com/blog/content/binary/far1.png

     

    Wszystkim z góry dziękuję za pomoc.

     

    Pozdrawiam,

    Mimek.

  7. Jak mi się zachcę to uporządkuje wszystko bardziej i dorobie czary, AI, przeciwników na dwie kratki, wybór jednostek przed walką, wygraną itp smile2.gif

    Wykorzystałem tu przyklad od Dark Exilera "Hexagonal Grid Engine" tylko go lekko zmodyfikowałem, zmodyfikowane skrypty leżą poza folderem "Hexagonal Grid Engine".

    Uporządkuj koniecznie, dokończ, proponuję zrobić własną siatkę, a poleci do zasobów na stronie :)

  8. albo wyjdz za maz za silnik i zmien nazwisko na Vin Diesel

     

    :lubieto:

     

    Musisz udać się do Urzędu Stanu Cywilnego i tam przedstawić swoją sytuację. Zmiana nazwiska to proces rozpatrywany dosyć długo i najczęściej z jakiegoś konkretnego powodu, np. nazwisko obraźliwe, w jakiś sposób nielicujące z godnością człowieka. A jeśli to tylko Twoje widzimisie, to szansy na pozytywną odpowiedź raczej nie ma.

     

    E: Poczytaj ustawę: http://isap.sejm.gov.pl/DetailsServlet?id=WDU20082201414

  9. Jaki router? Sprawdź w ustawieniach czy możesz zrobić kontrolę adresów MAC. Jeśli tak, to wpisujesz tam MACi kart sieciowych, dla których chcesz Wi-Fi i po krzyku.

  10. Po pierwsze: Chęci i ambicje.

    Po drugie: Mierzenie sił na zamiary.

    Po trzecie:

    A)Olanie wszystkiego, bo "i tak tego nie zrobię".

    B)Zabranie się do kodzenia.

     

    Jeśli odpowiedziałeś B ) to:

    Po czwarte: PHP - owszem; serwer - nie trzeba od razu kupować, postawić idzie na localhoście lub jakimś darmowym serwerze - ale to do testów, później trzeba kupić coś porządnego,

    Po piąte:

    -W czym to, k****, napiszesz?

    -HTML!

    -(FACEPALM). Trzeba umieć obsługiwać bazy danych, znać PHP, (X)HTML, JavaScript albo AJAX

    Po szóste: Vallheru lub XNova - słyszałeś o czymś takim? Jeśli nie, to ściągnij i zobacz - a to dopiero jakieś 30% całej gry.

    Po siódme: Życzę powodzenia.

×
×
  • Dodaj nową pozycję...