[vb] fade probleem

Pagina: 1
Acties:

  • Dizzy
  • Registratie: September 2000
  • Laatst online: 19-08 20:17

Dizzy

Where am I?

Topicstarter
Ik wil mijn programma laten faden naar zwart, na bijvoorbeeld een halve minuut, terwijl het programma gewoon doorwerkt. (soort screensaver dus)
Ik gebruik hiervoor een API-call (Set/Get-SystemColors)

Dat werkt wel goed zoals ik wil, maar alle windows schermen worden opnieuw gerefreshed. en dat kan bij mij zo'n 1 a 2 seconden duren...

weet iemand een leukere oplossing?

Steam Profile I5 14600K / 64 GB DDR5 / RTX 4090 / Rift S / HP Omen / Odyssey Neo G9 / Steam Deck OLED / Switch


  • Crazy D
  • Registratie: Augustus 2000
  • Laatst online: 12:14

Crazy D

I think we should take a look.

Snellere computer kopen :P

Maar hmm setsystemcolors? Fijn als je net op het donkere moment crasht, reboot je en heb je een lekkere donker beeld :P

Vriend van me heeft dat weleens gedaan door zelf de pixels te tekenen op hdc 0 (dacht ik dat het was) en op die manier de boel te faken. Laat je iig de windowskleuren mee in takt...

Exact expert nodig?


  • Dizzy
  • Registratie: September 2000
  • Laatst online: 19-08 20:17

Dizzy

Where am I?

Topicstarter
nah, dacht dat het wel mee viel met die snelheid... maar 't lijkt wel uren te duren.. :Z
Systeem kleuren worden niet opgeslagen.. dus na reboot/restart/opnieuw aanmelden zijn ze er wel weer

maar 'kzal't's ff proberen, maar wat je voorstelt lijkt meer op DirectX; en daar ben ik nu weer niet zon' ster in.

Steam Profile I5 14600K / 64 GB DDR5 / RTX 4090 / Rift S / HP Omen / Odyssey Neo G9 / Steam Deck OLED / Switch


  • Crazy D
  • Registratie: Augustus 2000
  • Laatst online: 12:14

Crazy D

I think we should take a look.

Die vriend van me deed dat geloof ik via SetPixel of zo, tis alweer een tijd geleden ;)
En met SetSystemColor worden ze niet opgeslagen? Mwah dat valt dan weer mee ;)

Exact expert nodig?


  • Dizzy
  • Registratie: September 2000
  • Laatst online: 19-08 20:17

Dizzy

Where am I?

Topicstarter
Ja dat is ook een leuke...
Als het scherm in de tussentijd niet veranderd, dan kan het nig wel.
Ik begin dan gelijk met tekenen van minstens 1024x768 pixels, waar ik per pixelwaarde een bedrag van -laten we zeggen 8- afhaal.
Dus na 32x1024x768 SetPixel-opdrachten dan zou het scherm zwart zijn. Een relatief langdurig proces, maar het kan inderdaad een leuk fade-out effect geven..

De problemen beginnen als mijn prog - of een ander voor mijn part - een scherm update doet..
Is dat scherm bezig half-donker te worden, en dan komt er zo'n gekleurde rechthoek in beeld... |:(


In een vorige poging, deed ik gewoon de form.backcolor veranderen. Dat ging wel netjes; van Goudgeel naar zwart - en met een MouseMove-event weer een fade-in..
Het probleem hiermee waren listboxen en andere controls die aan het flikkeren sloegen. Niet mooi dus en irritant.

Buttons zijn bijvoorbeeld ook nog in te kleuren, maar die highlight erom heen blijft wel zichtbaar. Dus moet ik weer eigen buttons maken van images oid.. en dat is ook weer zo'n gemier.


Dus ik wil wel dat de applicatie functioneel blijft

Steam Profile I5 14600K / 64 GB DDR5 / RTX 4090 / Rift S / HP Omen / Odyssey Neo G9 / Steam Deck OLED / Switch


  • Dizzy
  • Registratie: September 2000
  • Laatst online: 19-08 20:17

Dizzy

Where am I?

Topicstarter
nog vb-goeroes met ideeen?

Steam Profile I5 14600K / 64 GB DDR5 / RTX 4090 / Rift S / HP Omen / Odyssey Neo G9 / Steam Deck OLED / Switch


  • johnwoo
  • Registratie: Oktober 1999
  • Laatst online: 14:48

johnwoo

3S-GTE

Misschien kan je (al dan niet met DirectX) je videokaart/monitor settings veranderen? Je zou dan de brightness kunnen op- en neerschroeven, op die manier wordt alles netjes meegefade, en het gaat nog eens snel ook. Alleen het crash-probleem blijf je wel houden; als het proggel crasht met de brightness op 0 dan moet je in safemode booten om het weer normaal te krijgen :P

4200Wp ZO + 840Wp ZW + 1680Wp NW | 14xIQ7+ + 1xDS3-L | MTVenusE | HWP1


  • Adion
  • Registratie: Januari 2001
  • Laatst online: 05-09 08:09
Die methode met form.backcolor kan je nog wel gebruiken denk ik.
Je moet wel zorgen dat autoredraw opstaat, en dat je na het tekenen een me.refresh doet.
Verder kan je ook nog het scherm donkerder maken door een picturebox te maken (autoredraw=true,visible=false,width,height zoals het scherm)
Je kan dan de Handle van de desktop opvragen en met een BitBlt operatie met als copiermethode een AND.
Je begint je picture bij wit, en je maakt het telkens donkerder.
Door de AND copy zal ook het hele scherm langzaam uitfaden.
De gebruiker mag wel geen venstertjes bewegen dan, want dan worden ze weer gerefreshed natuurlijk.
Of je kan misschien eerst met de Handle van de desktop de desktop kopieren in een prentje, en dan een maximized venstertje met borderstyle none nemen om dit over te tekenen.
Ik hoop dat je nu een beetje verder kan.

VirtualDJ 2026 - Fast Image Resizer - Instagram


  • Dizzy
  • Registratie: September 2000
  • Laatst online: 19-08 20:17

Dizzy

Where am I?

Topicstarter
Thanx, ga ik uitproberen... *D

Steam Profile I5 14600K / 64 GB DDR5 / RTX 4090 / Rift S / HP Omen / Odyssey Neo G9 / Steam Deck OLED / Switch

Pagina: 1