Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VB6: FullScreen | VB

Gevil [16.09.2002 08:39:22]

#

Eli miten saa AJON aikana formin kokoruudun kokoiseksi.
Oheisella koodilla olen luonnollisesti yrittänyt, mutta ongelma kun on se että ajonaikana EI pysty borderstyleä vaihtamaan NONEksi(=0), eikä liiemmin takaisin SIZABLEksi(2). Eli kyllä sen formin saa ajon aikana kokoruuudun kokoseks mutta se borderstyle jää 2 eikä mene 0. Ehkä pitää ottaa joitain vahvempia työkaluja käyttöön, mutta mitä? :)

Form1.BorderStyle = 0 'tässä on se ongelma
Form1.WindowState = 2 'tämän osalta toimii

Antti [16.09.2002 10:17:06]

#

VB:ssä BorderStyle-ominaisuus ei ole asetettavissa lomakkeella eikä textboxilla "ajon aikaisesti" (runtime)...valitan.

Yritin etsiä pikaisesti myös WinAPI:sta functiota joka tempun tekisi, mutta ei löytynyt. Kyseessä on ilmeisesti ongelma, joka syntyy lomakkeen luontivaiheessa - lomakkeen ominaisuudet ladataan ennenkuin niitä voidaan muokata ja borderstyle vaikuttaa suoraan ladattavan lomakkeen tyyliin, jota ei voi muuttaa ruutupäivityksellä.... aika kinkkinen juttu.

Yksi keino efektin aikaansaamiseksi, voisi olla tekemällä lomakkeesta hieman ruutua suurempi... tosin aika kyseen alainen ;)

Mihin olisit halunnut lomaketta käyttää?

Gevil [16.09.2002 17:47:36]

#

Tässä nimenomaisessa tapauksessa olisin sitä käyttänyt GIBin (kuvienkatseluohjelma) kokoruutu-toimintoon.. siis että vois niitä kuvia katsella kokoruudulla eikä olisi häiritsevää sinistä palkkia siellä ylhäällä... suurempi kuvapinta-ala olisi.. Ja asianhan voisi kiertää laittamalla toisen formin siihen, mutta kun vb:eessä jokainen formi vie niin perkeleesti tilaa, että ohjelman koko kasvaa megoja tälläisillä ratkaisuilla.. :( ... snif.. :) on se vb paska, ei voi muuta sanoa :)

Antti Laaksonen [16.09.2002 17:54:01]

#

lainaus:

Ja asianhan voisi kiertää laittamalla toisen formin siihen, mutta kun vb:eessä jokainen formi vie niin perkeleesti tilaa, että ohjelman koko kasvaa megoja tälläisillä ratkaisuilla..

Ei uudet formit vie tilaa paljon yhtään, kunhan niissä ei ole grafiikkaa. Tee vain huoletta uusi oikeilla ominaisuuksilla varustettu formi.

Toinen vaihtoehto voisi olla kuvan piirtäminen suoraan näytölle oikean kokoisena StretchBlt-Api-funktiolla.

Gevil [16.09.2002 18:01:38]

#

Hmm.. ei kasva? Mä en kyllä ymmärrä miten sitten vaikka toi TNT-softwaren Jarkon kielikone osa1 (on muuten ihan surkea ohjelma..) vie melkein 2 megaa koneelta.. ja siinä on vaan labeleita, formeja, commandbuttoneja + 2 pientä kuvaa... et viekö ne labelit sitte sitä tilaa.. jota en kyllä heti uskos.. epäilen enemmänkin niitä formeja jota siinä on..

No ok.. en tiedä varmasti, mutta Laaksoselle kysymys: Paljonko veikkaat sen formin vievän tilaa..? ja toinen kysymys aiheuttaako tämä toisen formin käyttö paljon hitautta ohjelmassa? tarkoituksena olisi näet laittaa eräänlainen dia-show pystyyn siinä formilla.. ja itse se koodi pyörisi siinä alkuperäsessä formissa..

Antti Laaksonen [16.09.2002 18:10:59]

#

lainaus:

No ok.. en tiedä varmasti, mutta Laaksoselle kysymys: Paljonko veikkaat sen formin vievän tilaa..?

Pelkkä formi vienee keskimäärin muutaman tavun, ja sitten komponentit päälle.

Itse asiassa testasin asiaa kahdella ohjelmalla, joista toinen sisälsi yhden formin ja toinen kaksi. Molemmat formit näytetään ohjelmassa.

Uusi formi ei vaikuttanut mitenkään ohjelman kokoon, koko oli 16384 tavua (taitaa olla VB:n minimi) molemmissa ohjelmissa. Se taisi mahtua jonkin segmentin jatkoksi suoraan. Eli tässä tapauksessa formi ei vienyt yhtään tilaa...

lainaus:

ja toinen kysymys aiheuttaako tämä toisen formin käyttö paljon hitautta ohjelmassa?

Tuskin, ellei formi ole täynnä suuria kuvia.

Vastaus

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

Tietoa sivustosta