|
| Få billede vist på commandbutton ? Fra : Neo |
Dato : 26-03-05 01:23 |
|
Hej Alle
Hvordan får jeg et billede på min commandbutton til at tilpasse sig
størrelsen på commandbutton ?
Billedet er en lille wmf.fil, og billedet bliver godt nok vist på knappen,
men i alt for stor størrelse.
Mvh Neo
| |
Agner (11-04-2005)
| Kommentar Fra : Agner |
Dato : 11-04-05 11:57 |
|
"Neo" <neo___dk@hotmail.removethis.com> skrev i en meddelelse
news:4244abe2$0$156$edfadb0f@dtext02.news.tele.dk...
> Hej Alle
>
> Hvordan får jeg et billede på min commandbutton til at tilpasse sig
> størrelsen på commandbutton ?
>
> Billedet er en lille wmf.fil, og billedet bliver godt nok vist på knappen,
> men i alt for stor størrelse.
>
> Mvh Neo
'Opret et nyt project set 2 pictureBoxes Pic1 og Pic2
'Og en CommandButton Cmd1 på formen.
'Set BorderStyle på pictureBoxene til none.
'Set CommandButton style til graphics.
'Copy and Paste Sub proceduren herunder
'Jeg regner med at du godt er klar over at underScore (_)
'bruges i visual basic til linje-deling.
'Du skal aldrig forstørre et billede -bitmap, wmf eller anden.
'Lad altid billedet være større end CommandButton, så den
'tilpasses CommandBut ved formindskning
'Du skal muligvis ændre Stien til prøvebillederne
'Prøvebilledet Beany.bmp er commenteret. Du kan
'prøve den bagefter. Den står flottest på Cmd1:
'agner
Private Sub Form_Load()
Dim x As Single, y As Single
Dim fakW As Single, fakH As Single
Pic1.AutoSize = True
Pic1.AutoRedraw = True
Pic1.ScaleMode = vbTwips
Pic2.AutoSize = True
Pic2.AutoRedraw = True
Pic2.ScaleMode = vbTwips
Pic1.Visible = False
Pic2.Visible = False
Pic1.Picture = LoadPicture("")
Pic1.Cls
'Pic1.Picture = LoadPicture("C:\Programmer _
'\DevStudio\VB\Graphics\Bitmaps\Assorted\Beany.bmp")
Pic1.Picture = LoadPicture("C:\Programmer _
\DevStudio\VB\Graphics\Metafile\Business\Laptop2.WMF")
fakW = (Cmd1.Width) / Pic1.Image.Width
fakH = (Cmd1.Height) / Pic1.Image.Height
If fakW < fakH Then
fakW = fakH
End If
Pic2.Width = Pic1.Width * fakW
Pic2.Height = Pic1.Height * fakW
Pic2.PaintPicture Pic1.Image, 0, 0, _
Pic1.Image.Width * fakW, Pic1.Image.Height * fakW, _
0, 0, Pic1.Image.Width, Pic1.Image.Height
Cmd1.Picture = Pic2.Image
Cmd1.Refresh
End Sub
| |
Neo (11-04-2005)
| Kommentar Fra : Neo |
Dato : 11-04-05 12:27 |
|
> 'Opret et nyt project set 2 pictureBoxes Pic1 og Pic2
> 'Og en CommandButton Cmd1 på formen.
> 'Set BorderStyle på pictureBoxene til none.
> 'Set CommandButton style til graphics.
> 'Copy and Paste Sub proceduren herunder
> 'Jeg regner med at du godt er klar over at underScore (_)
> 'bruges i visual basic til linje-deling.
> 'Du skal aldrig forstørre et billede -bitmap, wmf eller anden.
> 'Lad altid billedet være større end CommandButton, så den
> 'tilpasses CommandBut ved formindskning
> 'Du skal muligvis ændre Stien til prøvebillederne
> 'Prøvebilledet Beany.bmp er commenteret. Du kan
> 'prøve den bagefter. Den står flottest på Cmd1:
>
> 'agner
>
> Private Sub Form_Load()
> Dim x As Single, y As Single
> Dim fakW As Single, fakH As Single
>
> Pic1.AutoSize = True
> Pic1.AutoRedraw = True
> Pic1.ScaleMode = vbTwips
> Pic2.AutoSize = True
> Pic2.AutoRedraw = True
> Pic2.ScaleMode = vbTwips
> Pic1.Visible = False
> Pic2.Visible = False
> Pic1.Picture = LoadPicture("")
> Pic1.Cls
> 'Pic1.Picture = LoadPicture("C:\Programmer _
> '\DevStudio\VB\Graphics\Bitmaps\Assorted\Beany.bmp")
> Pic1.Picture = LoadPicture("C:\Programmer _
> \DevStudio\VB\Graphics\Metafile\Business\Laptop2.WMF")
> fakW = (Cmd1.Width) / Pic1.Image.Width
> fakH = (Cmd1.Height) / Pic1.Image.Height
> If fakW < fakH Then
> fakW = fakH
> End If
> Pic2.Width = Pic1.Width * fakW
> Pic2.Height = Pic1.Height * fakW
> Pic2.PaintPicture Pic1.Image, 0, 0, _
> Pic1.Image.Width * fakW, Pic1.Image.Height * fakW, _
> 0, 0, Pic1.Image.Width, Pic1.Image.Height
> Cmd1.Picture = Pic2.Image
> Cmd1.Refresh
>
> End Sub
Hey Agner
Tusinde tak for det ... jeg afprøver det snarest !
Mvh Neo
| |
Agner (11-04-2005)
| Kommentar Fra : Agner |
Dato : 11-04-05 12:27 |
|
"Neo" <neo___dk@hotmail.removethis.com> skrev i en meddelelse
news:4244abe2$0$156$edfadb0f@dtext02.news.tele.dk...
> Hej Alle
>
> Hvordan får jeg et billede på min commandbutton til at tilpasse sig
> størrelsen på commandbutton ?
>
> Billedet er en lille wmf.fil, og billedet bliver godt nok vist på knappen,
> men i alt for stor størrelse.
>
> Mvh Neo
Jeg har slettet disse 2 linier i Suben, da de ikke behøves:
Pic1.Picture = LoadPicture("")
Pic1.Cls
hilsen, agner
Private Sub Form_Load()
Dim x As Single, y As Single
Dim fakW As Single, fakH As Single
Pic1.AutoSize = True
Pic1.AutoRedraw = True
Pic1.ScaleMode = vbTwips
Pic2.AutoSize = True
Pic2.AutoRedraw = True
Pic2.ScaleMode = vbTwips
Pic1.Visible = False
Pic2.Visible = False
'Pic1.Picture = LoadPicture("C:\Programmer _
'\DevStudio\VB\Graphics\Bitmaps\Assorted\Beany.bmp")
Pic1.Picture = LoadPicture("C:\Programmer _
\DevStudio\VB\Graphics\Metafile\Business\Laptop2.WMF")
fakW = (Cmd1.Width) / Pic1.Image.Width
fakH = (Cmd1.Height) / Pic1.Image.Height
If fakW < fakH Then
fakW = fakH
End If
Pic2.Width = Pic1.Width * fakW
Pic2.Height = Pic1.Height * fakW
Pic2.PaintPicture Pic1.Image, 0, 0, _
Pic1.Image.Width * fakW, Pic1.Image.Height * fakW, _
0, 0, Pic1.Image.Width, Pic1.Image.Height
Cmd1.Picture = Pic2.Image
Cmd1.Refresh
End Sub
| |
Agner (18-04-2005)
| Kommentar Fra : Agner |
Dato : 18-04-05 08:27 |
|
Korrektion:
Neo, jeg opdagede en fejl. Nu skulle det være iorden !
agner
Private Sub Form_Load()
Dim x As Single, y As Single
Dim fakW As Single, fakH As Single
Pic1.AutoSize = True
Pic1.AutoRedraw = True
Pic1.ScaleMode = vbTwips
Pic2.AutoSize = True
Pic2.AutoRedraw = True
Pic2.ScaleMode = vbTwips
Pic1.Visible = False
Pic2.Visible = False
' Pic1.Picture = LoadPicture("C:\Programmer" & _
' "\DevStudio\VB\Graphics\Bitmaps\Assorted\Beany.bmp")
Pic1.Picture = LoadPicture("C:\Programmer" & _
"\DevStudio\VB\Graphics\Metafile\Business\Laptop2.WMF")
fakW = (Command1.Width) / ScaleX(Pic1.Image.Width, vbHimetric, vbTwips)
fakH = (Command1.Height) / ScaleY(Pic1.Image.Height, vbHimetric,
vbTwips)
If fakW > fakH Then
fakW = fakH
End If
Pic2.Width = Pic1.Width * fakW
Pic2.Height = Pic1.Height * fakW
Pic2.PaintPicture Pic1.Image, 0, 0, _
Pic1.Image.Width * fakW, Pic1.Image.Height * fakW, _
0, 0, Pic1.Image.Width, Pic1.Image.Height
Command1.Picture = Pic2.Image
Command1.Refresh
End Sub
| |
Neo (18-04-2005)
| Kommentar Fra : Neo |
Dato : 18-04-05 12:59 |
|
"Agner" <agner@ingenmail.com> skrev i en meddelelse
news:4263612b$0$654$edfadb0f@dread16.news.tele.dk...
> Korrektion:
> Neo, jeg opdagede en fejl. Nu skulle det være iorden !
> agner
>
> Private Sub Form_Load()
> Dim x As Single, y As Single
> Dim fakW As Single, fakH As Single
>
> Pic1.AutoSize = True
> Pic1.AutoRedraw = True
> Pic1.ScaleMode = vbTwips
> Pic2.AutoSize = True
> Pic2.AutoRedraw = True
> Pic2.ScaleMode = vbTwips
> Pic1.Visible = False
> Pic2.Visible = False
> ' Pic1.Picture = LoadPicture("C:\Programmer" & _
> ' "\DevStudio\VB\Graphics\Bitmaps\Assorted\Beany.bmp")
> Pic1.Picture = LoadPicture("C:\Programmer" & _
> "\DevStudio\VB\Graphics\Metafile\Business\Laptop2.WMF")
> fakW = (Command1.Width) / ScaleX(Pic1.Image.Width, vbHimetric,
vbTwips)
> fakH = (Command1.Height) / ScaleY(Pic1.Image.Height, vbHimetric,
> vbTwips)
> If fakW > fakH Then
> fakW = fakH
> End If
> Pic2.Width = Pic1.Width * fakW
> Pic2.Height = Pic1.Height * fakW
> Pic2.PaintPicture Pic1.Image, 0, 0, _
> Pic1.Image.Width * fakW, Pic1.Image.Height * fakW, _
> 0, 0, Pic1.Image.Width, Pic1.Image.Height
> Command1.Picture = Pic2.Image
> Command1.Refresh
> End Sub
Hej Agner
Tak for det ...
Jeg har lige været en smut udenlands så jeg har ikke fået afprøvet din kode
endnu ...
jeg vender tilbage når jeg har afprøvet den
Mvh Neo
| |
|
|