[VB.NET] Topmost

Pagina: 1
Acties:

  • Remco
  • Registratie: Januari 2001
  • Laatst online: 21-05 08:21
Als ik op mijn form toepas:
Visual Basic:
1
Me.TopMost = True

Dan blijft mijn applicatie mooi niet topmost.

Vreemd genoeg kan ik er ook nergens wat over vinden waarom dit niet zal werken.
En ik heb het toch echt nodig om de gebruiker ergens toe te dwingen.

Iemand een idee ?
Of een ander idee om een form topmost te laten zijn ?

The best thing about UDP jokes is that I don't care if you get them or not.


  • DeverauX
  • Registratie: Februari 2002
  • Niet online

DeverauX

Focus is everything

Heb je hier alleen last van in de IDE, of ook wanneer je project gecompiled is :?

Zie ook:
TopMost Window Does Not Stay on Top in Design Environment

...whatever was distasteful or unpleasant or uncomfortable or painful - music could always soothe that.
All you have to do is reach out to beauty.
Quincy Jones


  • whoami
  • Registratie: December 2000
  • Laatst online: 00:40
Vreemd, ik heb dat probleem niet.

Echter, wat wil je dan wel 'dwingen' aan de gebruiker? Ben je dan niet beter geholpen met een modale form (ShowDialog() ) ?
DeverauX schreef op 11 januari 2004 @ 20:46:
Heb je hier alleen last van in de IDE, of ook wanneer je project gecompiled is :?

Zie ook:
TopMost Window Does Not Stay on Top in Design Environment
Dat slaat op Visual Basic, niet op Visual Basic .NET. In VB.NET compile je trouwens altijd je project. Het is niet zo als in VB dat je je project kon liet interpreten, nu kan je enkel compilede versies runnen.

[ Voor 66% gewijzigd door whoami op 11-01-2004 20:49 ]

https://fgheysels.github.io/


  • Remco
  • Registratie: Januari 2001
  • Laatst online: 21-05 08:21
Remc0 schreef op 11 januari 2004 @ 20:40:
Als ik op mijn form toepas:
Visual Basic:
1
Me.TopMost = True

Dan blijft mijn applicatie mooi niet topmost.

Vreemd genoeg kan ik er ook nergens wat over vinden waarom dit niet zal werken.
En ik heb het toch echt nodig om de gebruiker ergens toe te dwingen.

Iemand een idee ?
Of een ander idee om een form topmost te laten zijn ?
In beide situaties.

@whoami:
Ze "moeten" declaraties op een bepaald moment accepteren.
Op dit moment moeten ze ook nog declaraties kunnen toevoegen/verwijderen.
Maar het form mag pas weg als alles is geaccepteerd, dus dat red ik niet met een dialog.

Is er niet een soort functie in vb die de windowsstate bekijkt ?
Zoiets als:
Visual Basic:
1
2
3
sub FormStateChanged
me.topmost=true
end sub

Dan knippert het wel heen en weer als een applicatie de voorgrond krijgt, maar dan zijn ze toch verplicht de acceptatie af te werken.

The best thing about UDP jokes is that I don't care if you get them or not.


  • Crazy D
  • Registratie: Augustus 2000
  • Laatst online: 13:25

Crazy D

I think we should take a look.

Remc0 schreef op 11 januari 2004 @ 20:52:
Ze "moeten" declaraties op een bepaald moment accepteren.
Op dit moment moeten ze ook nog declaraties kunnen toevoegen/verwijderen.
Maar het form mag pas weg als alles is geaccepteerd, dus dat red ik niet met een dialog.
Zonder het hele project te kennen: ik denk dat je het wat moeilijker maakt dan nodig.
Toon dat accepteren-venster met ShowDialog met een Ok (accepteren) en Cancel. Als ze nog gegevens willen toevoegen/etc klikken ze op annuleren, om verder te gaan.

Of prop dat ergens op het invoeren-venster erbij :) Ik denk dat het voor gebruikers erg onlogisch werkt als er een windowtje los zweeft waarin ze declaraties moeten accepteren, en ze ondertussen nog wel gegevens kunnen invoeren. Dat is alsof je een order-invoer hebt waarbij in een los venster de Ok button staat om de order te accepteren.
Daarnaast is topmost misschien iets teveel van het goede: het komt ook meteen over alle andere windows (van andere apps) heen.
Maar da's just my humble opinion ;)

Exact expert nodig?


  • Remco
  • Registratie: Januari 2001
  • Laatst online: 21-05 08:21
Het is een programma waarin ze de hele week declaraties invullen.
Op maandag moet (directie wil dit) de afgelopen week aangevuld worden met declaraties tot aan hun contracturen.
Dan pas kunnen de declaraties geaccepteerd worden, en mag het programma afgesloten worden.

Het programma moet dus echt on top.

Maar met topmost wil dit niet lukken.
Het programma is dan nog steeds weg te klikken.

The best thing about UDP jokes is that I don't care if you get them or not.


  • whoami
  • Registratie: December 2000
  • Laatst online: 00:40
Maar ik blijf niet snappen waarom een Modal form niet voldoende is om die declaraties te accepteren?
En wat bedoel je met wegklikken? Waar klik je dan op, zodanig dat de form niet meer on top is? Ik heb het even geprobeerd, en het leek mij correct te werken.

https://fgheysels.github.io/


  • Remco
  • Registratie: Januari 2001
  • Laatst online: 21-05 08:21
Ik kan alt+tab doen, in de taakbalk switchen, noem het maar op.
Het form gedraagt zich net zo als een normaal formulier.

Hierbij een printscreen van het acceptatie gedeelte
Afbeeldingslocatie: http://www.oostzaan.net/ars.jpg
Zoals je kan zien worden er op een paar voorwaarden gecontroleerd, en is men in staat om een declaratie toe te voegen of te wissen, alvorens deze te accepteren.

The best thing about UDP jokes is that I don't care if you get them or not.


  • whoami
  • Registratie: December 2000
  • Laatst online: 00:40
Tja, dat is wel logisch toch....
Jij hebt een modal form nodig, niets meer of minder.

https://fgheysels.github.io/


  • Remco
  • Registratie: Januari 2001
  • Laatst online: 21-05 08:21
whoami schreef op 13 januari 2004 @ 08:42:
Tja, dat is wel logisch toch....
Jij hebt een modal form nodig, niets meer of minder.
Duidelijk.
Maar dan kan je nog steeds switchen naar een andere applicatie.

The best thing about UDP jokes is that I don't care if you get them or not.


  • whoami
  • Registratie: December 2000
  • Laatst online: 00:40
Remc0 schreef op 13 januari 2004 @ 08:59:
[...]

Duidelijk.
Maar dan kan je nog steeds switchen naar een andere applicatie.
Tja, als je dat niet wil, dan moet je terug DOS gaan gebruiken ofzo.

https://fgheysels.github.io/


Verwijderd

Hier een linkje waar wat code staat waarmee je ook SetWindowPos kunt gebruiken in vb.net
http://groups.google.com/...%26btnG%3DGoogle%2BSearch

  • Remco
  • Registratie: Januari 2001
  • Laatst online: 21-05 08:21
_/-\o_ tnx,

Dat werkt prima.
Ik was al aan de gang geweest met zo'n voorbeeld uit vb6, maar kreeg het absoluut niet aan de praat.

The best thing about UDP jokes is that I don't care if you get them or not.

Pagina: 1