[vb.NET] Yes-to-All

Pagina: 1
Acties:

  • Blizard
  • Registratie: September 2001
  • Niet online
Heb me al gek gezocht naar een methode om een Yes-to-all-knopje te krijgen op m'n messagebox, maar kan het maar niet vinden ?! Het enige wat ik kon vinden was een soort van messagebox die door implementatie van een dll dit wel kon. Lijkt me sterk dat Microsoft deze optie niet heeft voorzin in visual basic ?

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 01:00

.oisyn

Moderator Devschuur®

Demotivational Speaker

messagebox is een win32 iets, niet een vb iets. En nee, er is geen optie voor om dat in te stellen (alhoewel je het hier natuurlijk wel over .net hebt, dat ken ik minder goed)

Maar zo moelijk moet het toch niet zijn om een eigen custom message box in elkaar te zetten :?

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • alienfruit
  • Registratie: Maart 2003
  • Laatst online: 26-05 11:18

alienfruit

the alien you never expected

Je kan natuurlijk ook je eigen Messagebox functie maken ;)
Net zoals in Delphi doen :+

  • Blizard
  • Registratie: September 2001
  • Niet online
.oisyn schreef op 24 februari 2004 @ 17:37:
messagebox is een win32 iets, niet een vb iets. En nee, er is geen optie voor om dat in te stellen (alhoewel je het hier natuurlijk wel over .net hebt, dat ken ik minder goed)

Maar zo moelijk moet het toch niet zijn om een eigen custom message box in elkaar te zetten :?
Is inderdaad niet zO erg moeilijk, maar wat een ongeloofelijke tekortkoming vind ik dit |:( ...
Dan ga ik zelf maar ff aan de slag om een msgbox te schrijven...

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 01:00

.oisyn

Moderator Devschuur®

Demotivational Speaker

Overigens ben ik er nog steeds van overtuigd dat je dat niet mbv een knop moet doen, maar een checkbox. Soms wil je namelijk wel eens "no to all" ipv "yes to all", maar dat kan dan weer niet (of juist andersom) 8)7

Doe er dan een "apply to all" vinkje bij, zodat je diezelfde keuze op al je dingen kunt toepassen :)

[ Voor 4% gewijzigd door .oisyn op 24-02-2004 20:04 ]

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • Blizard
  • Registratie: September 2001
  • Niet online
.oisyn schreef op 24 februari 2004 @ 20:04:
Overigens ben ik er nog steeds van overtuigd dat je dat niet mbv een knop moet doen, maar een checkbox. Soms wil je namelijk wel eens "no to all" ipv "yes to all", maar dat kan dan weer niet (of juist andersom) 8)7

Doe er dan een "apply to all" vinkje bij, zodat je diezelfde keuze op al je dingen kunt toepassen :)
In mijn geval kan de gebruiker alleen maar JaOpAlles kiezen, als hij nee kiest stopt de actie ;) Het gaat namelijk over een importeer-actie. Als er iets fout loopt bij een record kan hij kiezen om verder te gaan, als er echter 100 brakke rijen in het bestand zit is dit niet zo fijn. Een vinkje is inderdaad ook een oplossing .. maar moet aangevinkt worden voor de eigenlijke actie wordt ingezet :/
Iemand een reden _waarom_ ze dit er niet hebben ingestoken ? (ms gebruikt het toch zelf ook ?!)

  • whoami
  • Registratie: December 2000
  • Laatst online: 00:40
Maar als je een generiek schermpje maakt, kan je dat in je applicatie (of in een andere app) gaan hergebruiken.

https://fgheysels.github.io/


  • Yoeri
  • Registratie: Maart 2003
  • Niet online

Yoeri

O+ Joyce O+

(overleden)
Blizard schreef op 24 februari 2004 @ 20:33:
[...]
Iemand een reden _waarom_ ze dit er niet hebben ingestoken ? (ms gebruikt het toch zelf ook ?!)
Omdat die msgboxen niet kunnen weten over welke boxen die "to all" geld?

Yes to all geldt immers niet voor alle messageboxen in je applicatie, maar voor welke dan wel allemaal? En hoe lang blijft die to all geldig? Tot je uit de lus geweest bent? Uit welke lus (als ze genest zijn)?

Of zie ik nu problemen waar er geen zijn?

offtopic:
:w whoami ... groetn aan je broertje :9

[ Voor 8% gewijzigd door Yoeri op 24-02-2004 20:54 ]

Kijkje in de redactiekeuken van Tweakers.net
22 dec: Onze reputatie hooghouden
20 dec: Acht fouten


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 01:00

.oisyn

Moderator Devschuur®

Demotivational Speaker

Robbedoeske schreef op 24 februari 2004 @ 20:45:
[...]

Omdat die msgboxen niet kunnen weten over welke boxen die "to all" geld?

Yes to all geldt immers niet voor alle messageboxen in je applicatie, maar voor welke dan wel allemaal? En hoe lang blijft die to all geldig? Tot je uit de lus geweest bent? Uit welke lus (als ze genest zijn)?
uhm, ik vind dit een beetje onzin allemaal. Messageboxen komen nu al met verschillende parameters: je hent een ok box, een ok/cancel box, een yes/no box, een abort/retry/ignore box, etc.

Die yes to all en no to all hadden ook gewoon parameters kunnen zijn van diezelfde functie imho, dus wat dat betreft vind ik het ook raar dat het er niet is

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • Yoeri
  • Registratie: Maart 2003
  • Niet online

Yoeri

O+ Joyce O+

(overleden)
ja, maar die parameters zijn enkel geldig op de box die je op dat moment met die bepaalde parameter aanroept toch ?

stel dat je een extra parameter ApplyToAll aanmaakt bij de msgbox... hoe wil je die dan concreet gaan gebruiken? Eens aangevinkt beteknt dat alle msgboxen in je app met die parameter niet meer weergegeven worden maar gewoon als antwoord "ja" kiezen?

hmz... ik druk me wat slecht uit denk ik maar het idee is er wel hoor :+

Kijkje in de redactiekeuken van Tweakers.net
22 dec: Onze reputatie hooghouden
20 dec: Acht fouten


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 01:00

.oisyn

Moderator Devschuur®

Demotivational Speaker

Nee natuurlijk niet, het is slechts een knop of een vinkje die je uitleest, het heeft niets te maken met de rest van je boxes die je toont.

Een vinkje "always perform this action" oid zorgt er niet voor dat als je opnieuw MessageBox () aanroept dat je dan meteen een returnvalue krijgt. Zoiets moet je helemaal zelf regelen, als in
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
if (!always_yes_ingevoerd)
{
    antwoord = messagebox (...);
    if (antwoord == always_yes)
    {
        always_yes_ingevoerd = true;
        antwoord = yes;
    }
}
else
    antwoord = yes;

...doe hier iets met antwoord...

[ Voor 15% gewijzigd door .oisyn op 24-02-2004 21:30 ]

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • PrisonerOfPain
  • Registratie: Januari 2003
  • Laatst online: 07-04 13:41
Robbedoeske schreef op 24 februari 2004 @ 20:45:
[...]

Omdat die msgboxen niet kunnen weten over welke boxen die "to all" geld?

Yes to all geldt immers niet voor alle messageboxen in je applicatie, maar voor welke dan wel allemaal? En hoe lang blijft die to all geldig? Tot je uit de lus geweest bent? Uit welke lus (als ze genest zijn)?

Of zie ik nu problemen waar er geen zijn?

offtopic:
:w whoami ... groetn aan je broertje :9
Zou je dan niet zoiets horen te krijgen:
code:
1
2
3
4
5
6
7
8
9
10
While True
If ret <> vbYesAll Then
    ret = MsgBox("blaat", vbYesAll, "Blaat")
    If ret = vbNo Then
        'Do stuff
    ElseIf ret = vbYes Or ret = vbYesAll Then
        'Doe meer stuff
    End If
End If
Wend

1. Het is een voorbeeld
2. Het is mischien niet de optimale manier om zoiets te doen, maar het is handiger dan zelf een form inelkaar prutsen

  • Korben
  • Registratie: Januari 2001
  • Laatst online: 14-11-2025

Korben

() => {};

Om zeg maar ff een nuttige reply te geven... MessageBox() is een functie in de Win32 API. Aan MessageBox() geef je een stijl mee, bijvoorbeeld MB_YESNO. Het zou niet moeilijk zijn om die functie zo te schrijven dat je compatibiliteit behoudt door bijvoorbeeld te zeggen:
C:
1
MessageBox(..., MB_YESNO | MB_YESTOALL, ...);
Pardon voor C gebruik, maar in VB.NET is de syntax zoiezo anders. Om te zien of je 'to all' gebruikt zou je dan heel makkelijk kunnen zeggen:
C:
1
if (MessageBox(...) == IDYES | IDTOALL)

Maar goed, om uiteindelijk het antwoord te geven op de vraag/klacht van de TS; het is nou eenmaal niet zo, omdat het niet in Windows zit.

.oisyn: Échte programmeurs haten PHP met een passie. Ben jij soms geen echte programmeur?


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 01:00

.oisyn

Moderator Devschuur®

Demotivational Speaker

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • Korben
  • Registratie: Januari 2001
  • Laatst online: 14-11-2025

Korben

() => {};

Mijn excuus, mijn hersenen hebben momenteel een lage ping.

[ Voor 19% gewijzigd door Korben op 24-02-2004 22:14 ]

.oisyn: Échte programmeurs haten PHP met een passie. Ben jij soms geen echte programmeur?


  • riezebosch
  • Registratie: Oktober 2001
  • Laatst online: 21-05 20:13
Maar ik kan me ook niet herinneren dat dit wel standaardmessageboxes in Windows zijn? Ik kan me alleen bij het verwijderen van meerdere (readonly bestanden) is, en dan is het ook geen standaard messagebox (gezien het prullenbak-icoontje erop).

Canon EOS 400D + 18-55mm F3.5-5.6 + 50mm F1.8 II + 24-105 F4L + 430EX Speedlite + Crumpler Pretty Boy Back Pack


  • farlane
  • Registratie: Maart 2000
  • Laatst online: 22-05 16:53
.oisyn schreef op 24 februari 2004 @ 20:04:
Overigens ben ik er nog steeds van overtuigd dat je dat niet mbv een knop moet doen, maar een checkbox. Soms wil je namelijk wel eens "no to all" ipv "yes to all", maar dat kan dan weer niet (of juist andersom) 8)7
Hint : [SHIFT] + Click

Tenminste normaal gesproken :)

Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 01:00

.oisyn

Moderator Devschuur®

Demotivational Speaker

Op een knop in zo'n messagebox bedoel je? En hoe ga je dat dan uitlezen? De MessageBox () functie retourneert niet een flag dat de shift ingedrukt was oid :?

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • farlane
  • Registratie: Maart 2000
  • Laatst online: 22-05 16:53
Ik doelde meer op het standaard messageboxje wat je in windows voor je kiezen krijgt.

Misschien is deze vanuit .Net te benaderen ?

Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.

Pagina: 1