https://www.ohjelmointiputka.net/koodivinkit/
Kokeilin tuota mutta haluaisin teitää miten sen saa toimimaan vb kolmosella. Kokeilin tuota viitosella. Ja muuten eipä näyttänyt olevan päällimmäisenä kun availi kaikkia ikkunoita.
Funktio haettiin user32-libistä, ja vb3 (16bit):n yhteensopivuus 32-bittisten funktioiden kanssa tiedetään.
Eli veikkaan, ettei tuota saa toimimaan vb3:lla.
Googlettamalla löytyi tämmöinen, minkä pitäisi toimia VB3:ssa:
Declare Function SetWindowPos Lib "user" (ByVal h%, ByVal hb%, ByVal x%, ByVal Y%, ByVal cx%, ByVal cy%, ByVal f%) As Integer
Miten toi olis vb.netillä?
Miten sen saa sitten päällimmäseksi. Laitoin tuon generalssiin. Mutta pitääkö jotain muuta tehdä?
Katso mallia tuosta vaikka tuosta koodivinkistä mitä itsekin olit jo yrittänyt käyttää. Nykäisin tuon rivin sitten osoitteesta http://www.vbexplorer.com/VBExplorer/tips/src21.
No joo. Eikös tuo tarkoita että formi pysyy päällimmäisenä muiden formien päällä eikä muiden Windows ikkunoiden. Sitten se ei ihan käy tarpeisiini.
Ainakin tuolla mainitsemallasi koodivinkillä ja VB6:lla sain ikkunan pysymään aina päällimmäisenä, myös muiden ohjelmien ikkunoiden päällä. Vai mitä oikein tarkoitit noilla "muilla Windows-ikkunoilla"?
Juuri sitä :)
Ensimmäinen viestini foorumilla puoleentoista vuoteen...
Mitenkäs saisi koodia sovellettua niin että MsgBox ilmestyisi muiden ikkunoiden päälle? Koodasin ohjelman joka piippaa käyttäjän määrittämänä kellonaikana ja avaa MsgBoxin jossa lukee syy piippaukselle. Ongelmana kuitenkin on se, että piippaus kuuluu, mutta ilmoitus jää muiden ikkunoiden taakse! Miten siis saada ohjelma toimimaan niin, että määriteltynä ajankohtana MsgBox ilmestyy ruutuun päällimmäiseksi?
Ja olet varmaan sinä aikana unohtanut että uuden aiheen voi myös luoda. :P
Eipä taida tavallisella msgboxilla onnistua. Laita viesti ruuduksi modaalinen formi:
Load frmMyForm
'... täytä viesti ruutu
frmMyForm.Show vbModal
Outoa. Mulla kyllä tavallinen MsgBox tulee päällimmäiseksi ja herättää säästötilassa olevan monitorinkin. Jos tätä viestiä kirjoittaessa tulee hälytys, niin tämän lootan tekstikin häviää. VB5:llä ja VB6:lla.
edit. katsoin ton alkup. viestin. Ei se tosiaan jää päällimmäiseksi mutta tulee päällimmäiseksi. muistaakseni tulee kolmosessakin päälle mutta en nyt takuuseen mene.
Aihe on jo aika vanha, joten et voi enää vastata siihen.