Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: C++/SDL: Ikkunan sijainti

Sivun loppuun

ankzilla [18.10.2009 16:08:08]

#

Terppa taas.
Oon tekemäs tämmöstä musasoitinta, mutta törmäsimpä heti ongelmaan:
Mites otetaan ikkunan sijainti selville?
-Tarvin hiiren koordinaatit, että voin esim volyymiä säätää,
mutta kun musaikkuna ei olekkaan niissä 0 ja 0 koordinaateissa. :S

Metabolix [18.10.2009 16:09:45]

#

Mitä tarkoitat? Eikö SDL:n ilmoittama hiiren sijainti ole juurikin suhteessa SDL:n ikkunaan (eli ikkunan vasen yläkulma on aina (0,0))? (Tämänkin saisit kokeilemalla helposti selville.)

ankzilla [18.10.2009 16:15:53]

#

Aijaa. :o
Noh, ei sitä kaikkea voi tietää. :D
Kiitos, Metabolix!

ankzilla [18.10.2009 19:34:23]

#

Noh...
Ei tämä nyt vaan perskule ala toimimaan...
Jumittaako teillä toi ohjelma:
http://82.128.207.9/ankkos/playank/source.cpp

Oon yrittäny 3 tuntia pähkäillä tota mut ei vaan ala toimii...

Metabolix [18.10.2009 19:54:12]

#

Ei, kyllä se esc-napista sammuu.

ankzilla [18.10.2009 20:11:36]

#

Metabolix kirjoitti:

Ei, kyllä se esc-napista sammuu.

No sit mulla on kone paskana. :'(
Koitanpa rebootata pari kertaa =>

Edit: Ja sehän autto...
Meni taas koko päivä harakoille ***!

Edit2: Tiedostoa ei pysty suorittamaan kuin yhdesti, sitte vetää jumiin. Miksi?

Mod. huom: kielenkäyttö!

Metabolix [18.10.2009 21:23:39]

#

Auttaako, jos lisäät loppuun (ennen SDL_Quit()-riviä) rivin Mix_CloseAudio()? Tämähän pitäisi joka tapauksessa olla.

Kommentissasi on muuten väärä tapa ladata ääni: avaat tiedoston muttet sulje sitä. Voit joko käyttää Mix_LoadWAV-makroa tai vaihtaa Mix_LoadWAV_RW-funktion jälkimmäisen parametrin ykköseksi, niin tiedosto myös sulkeutuu.

a = Mix_LoadWAV("aani.wav");
b = Mix_LoadWAV_RW(SDL_RWFromFile("aani.wav", "rb"), 1);

ankzilla [18.10.2009 23:07:52]

#

Metabolix kirjoitti:

Auttaako, jos lisäät loppuun (ennen SDL_Quit()-riviä) rivin Mix_CloseAudio()? Tämähän pitäisi joka tapauksessa olla.

En khyl tienny et moinen pitää olla. :o Kokeillaas...

Metabolix kirjoitti:

Kommentissasi on muuten väärä tapa ladata ääni: avaat tiedoston muttet sulje sitä.

Elikkäs... a ajaa saman asian kuin b? :o
Kuitenkin, tuo kommentissa oleva koodi oli vain epäsuora copypaste SDL oppaasta.
Laitoin sen kommenttimerkkeihin siltä varalta, että jonain päivänä netti menisi poikki eikä mulla ois muutakaa tekemistä. ;)

Thx taas.

Metabolix [18.10.2009 23:09:48]

#

ankzilla kirjoitti:

Elikkäs... a ajaa saman asian kuin b? :o

Näin on. Käytännössä Mix_LoadWAV on jopa toteutettu makrona, joka tekee täsmälleen saman:

#define Mix_LoadWAV(file)  Mix_LoadWAV_RW(SDL_RWFromFile(file, "rb"), 1)

Olen maininnut oppaan tekijälle ongelmasta jo monta viikkoa sitten, ehkä tuo vielä vuoden sisällä korjaantuu.

ankzilla [19.10.2009 12:32:59]

#

Dodiin, nyt voi suorittaa monta kertaa tuon ohjelman, eikä kaadu. :)
Sit vaan koodailemaan musiikintoistoa...
Vielä semmonen kysymys, että mites sais mp3:set soimaan? :S
-Taino eiköhän tuo Googletaamalla selviä. ;)

ankzilla [19.10.2009 14:16:17]

#

Heyy...
Nyt tuli pikku probleema, eikä Googlekaan osannut suomeksi neuvoa.
Tämä ei nyt liity mitenkään ikkunan sijaintiin, mutten halunnut tehdä turhan paljoa liikaa aiheita

Elikkäs, koodi on:

string song_name = "AC/DC - Highway to hell";
string song_name_playank = "[] - Playank";

Nyt, miten saan song_name_playankin arvoksi "[AC/DC - Highway to hell] - Playank"?
En älynnyt oikein miten tuota inserttiä oikein käytetään. :/ -Vai käytetäänkö sitä edes tuollaisissa tilanteissa?

vehkis91 [19.10.2009 15:05:39]

#

Oiskohan vaikka näin

string song_name = "AC/DC - Highway to hell";
string song_name_playank = "[" + song_name + "] - Playank";

ankzilla [19.10.2009 15:23:44]

#

Ah, lueskelin tota opasta ja hoksasin saman. :D
Kiitos, vehkis91.
Pahoitteluni että kysyin asiaa, joka selvästi luki oppaassa. ^^

Mutta mutta...
SDL_WM_SetCaption(string, NULL);
Tuohon ei vissiin saa laittaa stringejä?
-Ei mene ainakaan kääntäjästä läpi.

Edit: Tarkemmin sanottuna

string song_name_playank = "[" + song_name + "] - Playank";
SDL_WM_SetCaption(song_name_playank, NULL);

vehkis91 [19.10.2009 15:27:32]

#

Näin stringien kanssa.

string song_name_playank = "[" + song_name + "] - Playank";
SDL_WM_SetCaption(song_name_playank.c_str(), NULL);

ankzilla [19.10.2009 15:39:41]

#

Ai jumankekka, sehän toimii!
Kiitos todella paljon, vehkis91! En ois millää voinu moista tietää. :DD

Blaze [19.10.2009 17:23:41]

#

ankzilla kirjoitti:

Kiitos todella paljon, vehkis91! En ois millää voinu moista tietää. :DD

Eipä tietenkään. Asiasta ei esimerkiksi puhuta oppaassa yhtään mitään. Eiku...

ankzilla [19.10.2009 17:41:25]

#

Blaze kirjoitti:

ankzilla kirjoitti:

Kiitos todella paljon, vehkis91! En ois millää voinu moista tietää. :DD

Eipä tietenkään. Asiasta ei esimerkiksi puhuta oppaassa yhtään mitään. Eiku...

Eiku... :DDD
No ei sitä kaikkee hoxaa.


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta