Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

SFML Wybór

Ostatnio zmodyfikowano 2011-06-27 01:06
Autor Wiadomość
LukiPRO
Temat założony przez niniejszego użytkownika
SFML Wybór
» 2011-06-27 00:07:20
Witam, mam taki dziwny problem.

Chcę zrobić tak że jak kliknę na przycisk (zrobiony za pomocą sf::Sprite) to wszystko znika i pojawia się coś innego.
Ale nie wiem jak mam się za to zabrać.

I tu mam pytanko.

Można zrobić funkcję gdzie zostanie stworzone nowe okno czy nie można 2 okien robić?

Czy może

Wyczyścić obecne okno i tak od nowa wszystko?

Co do 1 to nie mam pojęcia czy tak można.
A co do 2 to nie wiem jak się za to zabrać.
Macie może jakieś przykłady? Bo nie chcę prosić o gotowiec tylko chciałbym zobaczyć jak to wygląda.

A nie mam pojęcia jak wyczyścić ekran a potem wyświetlić nowe obrazki itd ale bez tych starych.




PS. Wiem że tak dziwnie opisałem ale nie miałem pomysłu :D
 Jak kod potrzebny (w co wątpię) to pisać.

I dzięki za pomoc.

Pozdrawiam
P-34769
kamillo121
» 2011-06-27 00:11:56
Możesz spróbować widoków(views) a co do czyszczenia to przecież istnieje metoda Clear() obiektu powierzchni ekranowej czy jakkolwiek inaczej to się w SFML'u nazywa.
P-34770
LukiPRO
Temat założony przez niniejszego użytkownika
» 2011-06-27 00:32:27
a można utworzyć 2 okna?

tzn jedno w main
a drugie w funkcji?
P-34771
kamillo121
» 2011-06-27 00:39:06
Możesz sobie kilka okienek tworzyć ale to nie jest najlepsze wyjście :)
P-34773
LukiPRO
Temat założony przez niniejszego użytkownika
» 2011-06-27 00:46:00
właśnie spróbowałem z Clear ale coś nie idzie
tzn działa
ALE
używam bezpośredniego dostępu do myszki
i tu jest problem
myszka.IsMouseButtonDown

te IsMouseButtonDown

jak kliknę na przycisk i przytrzymam to ekran jest czysty bo dałem Okno.Draw w if (bCzyKliknieto == false)

jeżeli nie kliknięto to się wyświetla
a jak nacisnę to znika ale jak puszę to znów się pojawia

da się jakoś przypisać true na stałe nawet jeżeli powinno być false?

albo czy jest coś takiego co:

sprawdza czy podany przycisk myszy został wciśnięty.

a nie

sprawdza czy podany przycisk myszy jest wciśnięty.
P-34774
kamillo121
» 2011-06-27 00:51:12

da się jakoś przypisać true na stałe nawet jeżeli powinno być false?
 Na tej stronie powinno się prowadzić dzienniczek z najlepszymi tekstami użytkowników, to jest świetne :)
Tak na serio to:
C/C++
int main( /* */ )
{
    bool stop = false;
   
    while( /*głowna petla*/ )
    {
        while( /*zdarzenia*/ )
        {
            if( kliknieto w sprite przycisk )
            {
                stop = true;
            }
        }
       
        if( !stop )
        {
            //rysuj główne okno
        }
    }
    return 1;
}

Radzę Ci zrezygnować z takiego sposobu bo to toporne :)
P-34775
LukiPRO
Temat założony przez niniejszego użytkownika
» 2011-06-27 00:56:19
właśnie tak mam jak podałeś
ALE

problem w tym że IsMouseButtonDown zmienia status na false gdy puszczę lewy myszy a tego nie chce
ma być ciągle true nawet jak już puszczę ten przycisk
P-34776
kamillo121
» 2011-06-27 00:58:34
No ok ale w jakim celu ? W programie sugeruj się własnymi zmiennymi którym sam w odpowiednim momencie będziesz zmieniał wartość.


albo czy jest coś takiego co:

sprawdza czy podany przycisk myszy został wciśnięty.

a nie

sprawdza czy podany przycisk myszy jest wciśnięty.

No to właśnie ta zmienna stop sugeruje że przycisk był wciśnięty.
P-34777
« 1 » 2
  Strona 1 z 2 Następna strona