Eli miten C++ voisi toteuttaa vieritysvalikon ja taulukon. Eli tarkoitan, että olisi joku tälläinen tekstikentän tapainen kohta mikä tarvittaessa venyessään liian alas tulee sivuun se vieritys mahdollisuus ja taulukolla tarkoitan samaa kuin HTML:ssä table
Helpoimmalla pääset, kun käytät jotain frameworkkia, missä on valmiina toteutettu suunnilleen haluamasi toiminnallisuus.
Ultimate++ on ihan pätevä.
Mitä tulee vieritysjuttujen toteuttamiseen kokonaan itse, niin hommahan toimii yksinkertaisesti siten, että piirrät puskuriin. Tästä puskurista piirrät näkyvän ikkunan osan ruudulle. Vierityksen saat aikaiseksi yksinkertaisesti muuttamalla puskurin offsettia.
Olisiko ListView-kontrolli mitä haet? Kuva. Löytyy varmaan kaikista GUI-kirjastoista jossain muodossa.
Juuri tuota hain. Tismalleen samallaista. :)
Sitten vielä tälläinen kun olen jo pitkään juossut sen ongelman perässä. Otin enginen pohjaksi tuon matopelin, mutta sen jälkeen kun lisäsin engineen vielä SDL_ttf:n ja musiikki jutut niin on käynyt niin, että peli vie RAM muistia joka sekuntti enemmän ja enemmän kunnes koko peli tai kone kaatuu ylikurmituksen takia. Vapautan kyllä kaikki tekstit ja kuvat piirretään vain kerran ja musiikit toimivat samalla tavalla kuin kuvat matopelin enginessä, silti se tekee sitä. Missä voisi vielä olla vika?
E: Tai tuo ajamis funktiohan menee näin minulla nyt:
while (pelin_kello + ajan_muutos <= ohjelma::sekunnit()) { pelin_kello += ajan_muutos; piirretty = false; } if (piirretty) { ohjelma::odota(); } else { ohjelma::piirra_peli(pelialue, p); piirretty = false; }
ja tuon laajenemisen on pakko johtua grafiikasta, koska se tekee sitä nytten ja tuolta puuttuu nyt kaikki muut.
Ei enää ongelmaa. Kävin 50minuuttia muistin hallintaa läpi ja huomasin aukon jonka takia peli latasi kaikkea uudestaan. =)
Etsein googlella apua tuon ListView käyttöön, mutta en löytänyt mitään ja jos löysin niin en tajunnut sivuista mitään, kun oli niin omituiset, että missä se opas on, joten tietääkö ketään mitään listview käyttöön olevaa ohjetta tai miten tuota funktiota käytetään vieritystaulukoiden tekemiseen.
mika132 kirjoitti:
Etsein googlella apua tuon ListView käyttöön, mutta en löytänyt mitään ja jos löysin niin en tajunnut sivuista mitään, kun oli niin omituiset, että missä se opas on, joten tietääkö ketään mitään listview käyttöön olevaa ohjetta tai miten tuota funktiota käytetään vieritystaulukoiden tekemiseen.
Et maininnut, mihin frameworkiin päädyit. Käytätkö esim. Qt, .Net tms.? Kuten mainittua, vastaava ominaisuus löytyy ~kaikista UI-kirjastoista. Ellet välttämättä halua lähteä sitä ListViewiä koodaamaan, sinun kannattaa joku kirjasto ohjelmaasi valita. Joku muu osaa varmaan vinkata enempi, mitä vaihtoehtoja C++:n kanssa on.
Kun kirjasto on valittu, kannattaa sen arkkitehtuuriin ja mahdollisuuksiin tutustua huolella ennenkö alkaa koodaamaan. Säästää aikaa, kun ottaa homman haltuun kerralla ;-)
Aihe on jo aika vanha, joten et voi enää vastata siihen.