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

[sfml]problem z wyświetlaniem danych.

Ostatnio zmodyfikowano 2012-01-27 20:39
Autor Wiadomość
maestro
Temat założony przez niniejszego użytkownika
[sfml]problem z wyświetlaniem danych.
» 2012-01-24 21:40:57
C/C++
include < SFML / Graphics.hpp >
#include <iostream>
#include <cstdio>
#include <string>
int main()
{
    sf::RenderWindow uklad( sf::VideoMode( 800, 600, 32 ), "Symulacja ukladu planetarnego" );
    //zawartości
    int bank = 50030;
    int koszta;
    int konto;
    int wz[ 13 ];
    int nz[ 13 ];
    int lz[ 13 ];
    //ilości
    int nr = 0;
    int nr2 = 1;
    //zminniki
    int przelew = 0;
    int stop;
   
    while( uklad.IsOpened() )
    { if( przelew > 0 )
        { do { nr++;
                wz[ nr ] = konto;
                nz[ nr ] = wz[ nr ];
                lz[ nr ] = 10 * wz[ nr ];
                konto /= 10; } while( konto > 0 );
           
            stop = nr;
            do { std::cout << nr << "." << wz[ nr ] << "." << lz[ nr ] << std::endl;
                nr--; } while( nr > 0 );
           
            nr = 1;
            do { std::cout << wz[ nr ] << std::endl;
                nr++; sf::Font czcionka; } while( nr < stop + 1 );
           
            nr = 1;
            nr2 = 2;
            do { wz[ nr ] = nz[ nr ] - lz[ nr2 ];
                nr++;
                nr2++; } while( nr < stop );
           
            nr = 1;
            do { std::cout << nr << "." << wz[ nr ] << "." << nz[ nr ] << lz[ nr ] << std::endl;
                nr++; } while( nr < stop + 1 );
           
            nr = 0;
            przelew = 0; }
       
        sf::Event zda;
        while( uklad.GetEvent( zda ) )
        { if( zda.Type == sf::Event::Closed )
            { uklad.Close(); }
           
            if( zda.Type == sf::Event::KeyPressed && zda.Key.Code == sf::Key::D )
            { koszta = 57;
                bank -= koszta;
                konto = bank;
                przelew = 2;
                std::cout << "stan konta" << bank << std::endl; }
        }
       
        uklad.Clear( sf::Color::Black );
        uklad.Display();
    }
    return 0;
}
napisałem kod który wyświetla podany wynik w obraskach
ostatni był tam switch i linki z obrazkami ,ale pojawił się problem prubując go usunąć pozbyłem się switch i linków ,ale problem nadal występuje kilka takich
C:\Docum...|1|error: invalid preprocessing directive #i|
i same takie
C:\Docume...|1|warning: null character(s) ignored|


P-49360
RazzorFlame
» 2012-01-24 21:54:56
Ehm przyjrzyj sie pierwszemu znaku w pierwszej linijce...
Szczerze mowiac nie znam sie na SFML ale nie ma znaku '#' przed include.
:)
P-49363
hincu
» 2012-01-24 22:05:27
gdybys znal podstawy wiedzialbys ze std::cout jest do konsoli nie aplikacji okienkowych O_O
w tym wypadku musisz sam sobie zaimplementowac cos w stylu textbox'ow
mala pomoc 
C/C++
sf::String jakis_napis = " trololololo";
/*   opcjonalnie
sf::Font twoja_czcionka;
twoja_czcionka.LoadFromFile( "czcionka.ttf");
jakis_napis.SetFont( twoja_czcionka);
*/
jakis_napis.SetPosition( x, y );
twoje_okno.draw( jakis_napis );
przeczytaj dokumentacje sfml wkoncu bo bez tego dlugo nie pociagniesz czlowieku
P-49367
maestro
Temat założony przez niniejszego użytkownika
» 2012-01-24 22:15:56
RazzorFlame
brak "#" to nie moja pomyłka edycja coś zła ja mam wpisane "#"
hincu
ej zdajesz sobie sprawę że nie mam pojęcia jak dopisywać wartości liczbowe z np. int 
a po za tym jak bym chciał zrobić coś jak w gta sa jest licznik czyli zrobić coś jak przemian tekstu jak w power paint (bo spodobało mi się przerabianie czcionki z takimi efektami jak pp)
albo sfml tego nie oferuje ,więc wiesz będę wdzięczny jeśli mi napisze krótszy sposób ,albo ....
tak więc tylko pytam o dodanie liczb z int czy float do sf::String
P-49371
hincu
» 2012-01-25 14:47:18
podam tobie fragment mojej klasy GUI powinno wystarczyc

wyciagnij sobie to co ci sie przyda

C/C++
//(...)
#include <stringstream>
#include <SFML/Window.hpp>
#include <SFML/Graphics.hpp>
//(...)

void GUI::PrintFPS( sf::RenderWindow & TestWND )
{
    sf::String Text;
    std::stringstream SString;
    int FPS;
    FPS = 1 / TestWND.GetFrameTime();
    SString << FPS; // int -> stringstream
    Text.SetSize( Text.GetSize() / 2 );
    Text.SetPosition( 0.f, 0.f );
    Text.SetText( "FPS:" + SString.str() ); // powinienes wiedziec to czego to jest
    TestWND.Draw( Text );
}

void GUI::PrintMousePos( sf::RenderWindow & TestWND, const sf::Input & TestMouse )
{
    sf::String Text;
    std::stringstream MouseX;
    std::stringstream MouseY;
    MouseX << TestMouse.GetMouseX();
    MouseY << TestMouse.GetMouseY();
    Text.SetSize( Text.GetSize() / 2 );
    Text.SetPosition( 0.f, 15.f );
    Text.SetText( "Mouse: " + MouseX.str() + ", " + MouseY.str() );
    TestWND.Draw( Text );
}
//(...)
P-49410
pekfos
» 2012-01-25 15:24:43
#include <stringstream>
a nie
#include <sstream>
?
:P
P-49413
hincu
» 2012-01-25 15:51:57
mozna tez tak : P
P-49416
maestro
Temat założony przez niniejszego użytkownika
» 2012-01-25 21:11:44
taa fajne czemu gui
ss kurde czemu nikt nie powiedział od razu

ta nazwa zależy od nazwy pliku sstream czy stringstream
pewnie mógłbym nawet zmienić nazwy zmiennych itd 

hincu bardzo złośliwy jesteś


/edit
pomocy ciągle mi dopisuje wartość zlituj się napisz jak czyścić ten stream próbowałem i nic mi nie działa
P-49459
« 1 » 2 3 4 5 6
  Strona 1 z 6 Następna strona