Avatar billede raenil Nybegynder
18. oktober 2000 - 15:09 Der er 8 kommentarer og
1 løsning

Common dialog

Hej

Jeg er ved at forsøge at printe, og kald mig dum, men jeg kan _simpelthen_ ikke få CommonDialog til at gøre noget som helst.
Den skal jo egentlig kun printe hvis brugeren trykke OK, så kan det ikke lade sig gøre på en eller anden måde at få at vide om der er blevet trykket OK eller Cancel?

mvh
Morten
Avatar billede jette Nybegynder
18. oktober 2000 - 15:23 #1
Har du problemer med at der bliver printet - selv om der trykkes cancel ?
Avatar billede raenil Nybegynder
18. oktober 2000 - 15:29 #2
Mit problem er nok at jeg ikke for godt ved hvordan common dialog virker. Jeg kan sagtens få den til at printe, og jeg kan også godt få common dialog til at fortælle mig hvilken printer der skal bruges. Men jeg kan ikke lige se hvordan jeg skal stille min kode op, så udprintningen afhænger af om der er trykket Ok eller Cancel. Et hurtigt kodeeksempel kunne fx være til hjælp.
Avatar billede powell Nybegynder
18. oktober 2000 - 15:37 #3
Måske kan dette kode hjælpe dig:

Dette kode burde finde printere der er koblet til systemmet.

Private Sub Form_Activate()
List1.Clear
Dim i%
For i = 0 To Printers.Count - 1
List1.AddItem Printers(i).DeviceName & \": \" & Printers(i).Port
Next i
End Sub

Private Sub List1_Click()
Set Printer = Printers(List1.ListIndex)
Printer.Print \"test Text\"
Printer.EndDoc
End Sub
Avatar billede powell Nybegynder
18. oktober 2000 - 15:48 #4
Jeg regner med at du bruger en msgbox med valgmuligheder.

Da kan du muligvis gøre det sådan her:

Dim Message as string
Message = msgbox(\"Valg....

if Message = vbOK then msgbox (\"Der blev trykket OK\")
if Message = vbCancel then ....
Avatar billede jette Nybegynder
18. oktober 2000 - 16:18 #5
Jeg bruger CommonDialog - men jeg tester ikke på om der klikkes på den ene eller den anden knap.

Jeg tror at det er indbygget i CommonDialog at lukke ned - uden at gøre noget - ved tryk på Cancel.
Avatar billede driis Nybegynder
18. oktober 2000 - 17:01 #6
Under properties for din CommonDialog, sætter du \"CancelError\" til at være True.

Private Sub Command1_Click()
On Error GoTo CancelSelected
CommonDialog1.ShowPrinter
On Error GoTo 0
MsgBox \"OK blev valgt\"

Exit Sub
CancelSelected:
On Error GoTo 0
MsgBox \"Der blev trykket Cancel\"

End Sub
Avatar billede driis Nybegynder
18. oktober 2000 - 17:03 #7
...Så kan du bruge en kode i stil med ovenstående.
Avatar billede raenil Nybegynder
18. oktober 2000 - 20:07 #8
Takker til driss - det var den stump kode jeg manglede. Burde have tænkte på det selv, men undlod af en eller anden årsag. :-)

Powel>> dit virker vel også, men nu var det jo en CommonDialog jeg ledte efter brugsanvisning i.
Avatar billede powell Nybegynder
19. oktober 2000 - 09:06 #9
Der er OK, vi lærer da alle af dette her...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester