Avatar billede loukas Mester
08. maj 2003 - 22:06 Der er 14 kommentarer og
1 løsning

Skift billede i PictureBox

Jeg er begynder i VB.
Jeg har oprettet en CommandButton og en PictureBox.
Med CommandButton åbner jeg en CommonDialog.
Det er meningen at den billed-fil man vælger via CommonDialogen skal vises i PictureBox.
? ? ? ? ?
Avatar billede mcgoat Nybegynder
08. maj 2003 - 22:10 #1
CommonDialog1.ShowOpen
Picture1.Picture = LoadPicture(CommonDialog1.FileName)
Avatar billede loukas Mester
08. maj 2003 - 22:34 #2
jo, det er jeg med på men det viser jo ikke billedet i PictureBoxen !!
Avatar billede loukas Mester
08. maj 2003 - 22:35 #3
jeg har noget der ser sådan her ud:
Private Sub Command3_Click()
   
    CommonDialog1.ShowOpen
    Picture1.Picture = LoadPicture(CommonDialog.FileName)
   
End Sub

Private Sub Picture1_Click()
   
End Sub
Avatar billede hcichosz Praktikant
09. maj 2003 - 07:29 #4
du kan gøre det sådan her med en image1 og en Command1 og en commondialog

Private Command1_Click()
Dim Whatfile As String
CommonDialog1.Filter = "All Files (*.*)|*.*|JPG Files (*.jpg)|*.jpg|GIF Files (*.gif)|*.gif|BMP Files (*.bmp)|*.bmp"
CommonDialog1.ShowOpen
Whatfile = CommonDialog1.FileName
Image1.Picture = LoadPicture(Whatfile)
Me.Width = Image1.Width + 2000
Me.Height = Image1.Height + 500
Image1.Move 1000, 0
End Sub
mvh HC
Avatar billede hcichosz Praktikant
09. maj 2003 - 07:35 #5
sådan
Private Sub Command1_Click()
Dim Whatfile As String
CommonDialog1.Filter = "All Files (*.*)|*.*|JPG Files (*.jpg)|*.jpg|GIF Files (*.gif)|*.gif|BMP Files (*.bmp)|*.bmp"
CommonDialog1.ShowOpen
Whatfile = CommonDialog1.FileName
Picture1.Picture = LoadPicture(Whatfile)

End Sub
Avatar billede hcichosz Praktikant
09. maj 2003 - 07:36 #6
og vis du vil bestemme hvordan og størelse mm
Me.Width = Image1.Width + 2000
Me.Height = Image1.Height + 500
Image1.Move 1000, 0
Avatar billede mcgoat Nybegynder
09. maj 2003 - 08:03 #7
Jo, det jeg skrev virker perfekt...
Avatar billede mikker Nybegynder
09. maj 2003 - 19:01 #8
Loukas>> Der er stavefejl i din kode...
   
CommonDialog1.ShowOpen ' her bruger du commondialog1
Picture1.Picture = LoadPicture(CommonDialog.FileName)' her er der intet 1 tal

Det kan du undgå ved at skrive
option explicit
som den allerførste linie i din kode...

- Mikker
Avatar billede mikker Nybegynder
09. maj 2003 - 19:04 #9
Husk lige at sætte

Autoredraw til True
og evt. AutoSize til True

på din picturebox...

- Mikker
Avatar billede martin_moth Mester
09. maj 2003 - 19:54 #10
loukas: Din kode er helt rigtig, der mangler bare at rette den stavefejl mikker nævner. mcgoat tilføjer bare flere smarte ting til din kode :o)

Et rigtigt godt tip:
Under Tools -> Options hakker du "Require variable Declaration" af  - så vi du ikke kunne komme til at lave sådanne (stave)fejl igen, da VB så vil fortælle dig, at commondialog ikke er en kendt variabel - og dermed opdager du stavefejlen :o)
Avatar billede mikker Nybegynder
09. maj 2003 - 20:06 #11
Martin>> Hvori ligger forskellen fra option explicit?

- Mikker
Avatar billede loukas Mester
09. maj 2003 - 20:16 #12
Tak til alle for hjælpen !!
Avatar billede mikker Nybegynder
09. maj 2003 - 20:41 #13
Det var så lidt, det er vel derfor vi er samlet her
Paradise of the NERDS :o)

- Mikker
Avatar billede martin_moth Mester
10. maj 2003 - 10:25 #14
mikker: Forskellen er blot, at ved at afkrydse "Require variable Declaration" vil ALLE variable - også lokale variable indenfor en Sub, i et andet modul osv. - skulle Dim'mes, ellers brokker VB sig - herved kan man ikke få lov at stave et variabelnavn forkert med alle de problemer det giver ... :o)
Avatar billede mikker Nybegynder
10. maj 2003 - 11:52 #15
Hmmm... Lyder interessant
Selv har jeg dog altid fundet Option Explicit tilstrækkelig.
Så lærte jeg noget nyt. :o)

- Mikker
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