/ Forside / Teknologi / Udvikling / VB/Basic / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
VB/Basic
#NavnPoint
berpox 2425
pete 1435
CADmageren 1251
gibson 1230
Phylock 887
gandalf 836
AntonV 790
strarup 750
Benjamin... 700
10  tom.kise 610
Picturebox med scroll
Fra : Kim Larsen


Dato : 27-07-01 15:06



Er der nogen der kender til en control, som picturebox, med mulighed
for at kunne scrolle i billedet, hvis billedet er størrer end den form
billedet vises på.

Jeg har prøvet mig frem med den alm. PictureBox ctl, med syntes ikke
rigtigt jeg kan få det til at virke.


På forhånd tak

/K.L.

 
 
Knut Nordal (29-07-2001)
Kommentar
Fra : Knut Nordal


Dato : 29-07-01 10:40

Hei
du kan bruke picturebox til dette!
legg 2 pictureboxer på formen med picture2 inne i picture1 og sett
controllene scroll1 og hscroll1 ved siden av picture1 og legg en kode som
eksempelvis her på formen "sett autosize på picture1 til true"

Private Sub VScroll1_Scroll()
Picture2.Top = -VScroll1.Value + 60
End Sub

Private Sub HScroll1_Scroll()
Picture2.Left = -HScroll1.Value + 60
End Sub

Private Sub Command1_Click()
On Error GoTo OpenProblem

Dialog1.Filter = "BMP Filer|*.bmp"
Dialog1.FilterIndex = 1

Dialog1.Action = 1

Picture2.Picture = LoadPicture("")
Picture2.Picture = LoadPicture(Dialog1.FileName)
VScroll1.Max = Picture2.Height + 60
HScroll1.Max = Picture2.Width + 60
Exit Sub
OpenProblem:

Exit Sub
End Sub

var det noe slikt du tenkte på?

MVH Knut nordal
"Kim Larsen" <vespertilio@hotmail.com> skrev i melding
news:s5t2mt4ts1dcf929a16bqtrl2i1482065m@4ax.com...
>
>
> Er der nogen der kender til en control, som picturebox, med mulighed
> for at kunne scrolle i billedet, hvis billedet er størrer end den form
> billedet vises på.
>
> Jeg har prøvet mig frem med den alm. PictureBox ctl, med syntes ikke
> rigtigt jeg kan få det til at virke.
>
>
> På forhånd tak
>
> /K.L.



Bjarke Walling Peter~ (29-07-2001)
Kommentar
Fra : Bjarke Walling Peter~


Dato : 29-07-01 12:09

Kim Larsen skrev:
> Er der nogen der kender til en control, som picturebox, med mulighed
> for at kunne scrolle i billedet, hvis billedet er størrer end den form
> billedet vises på.

Du kunne jo evt. lave det selv.

Placér 2 Picture-bokse (Picture1 må gerne være lidt stor, men ikke for
stor), 1 VScroll, 1 HScroll og 1 CommandButton på en form og sæt følgende
properties:
Picture1
TabStop = False
Picture2
AutoRedraw = True
AutoSize = True
BorderStyle = 0 (None)
VScroll1 & HScroll1
LargeChange = 50
SmallChange = 10
TabStop = False
Command1
TabStop = False

Skriv følgende kode ind og kør programmet... så skal du bare se!

Private Sub Command1_Click()
MsgBox "Jeg ved ikke hvad denne knap kan " & _
"bruges til, men den er da meget flot, ikke?"
End Sub
Private Sub Form_Load()
SetProperties
LoadGraphic
End Sub
Private Sub SetProperties()
Set Picture1.Container = Me
Set Picture2.Container = Picture1
Set VScroll1.Container = Picture1
Set HScroll1.Container = Picture1
Set Command1.Container = Picture1
VScroll1.Top = 0
HScroll1.Left = 0
VScroll1.Width = 255
HScroll1.Height = 255
VScroll1.ZOrder 0
HScroll1.ZOrder 0
Command1.ZOrder 0
Command1.Caption = "?"
Command1.Width = 255
Command1.Height = 255
End Sub
Private Sub HScroll1_Change()
Picture2.Left = -HScroll1.Value * 15
End Sub
Private Sub HScroll1_Scroll()
Picture2.Left = -HScroll1.Value * 15
End Sub
Private Sub Picture1_Resize()
VScroll1.Left = Picture1.Width - 315
VScroll1.Height = Picture1.Height - 315
HScroll1.Top = Picture1.Height - 315
HScroll1.Width = Picture1.Width - 315
Command1.Left = Picture1.Width - 315
Command1.Top = Picture1.Height - 315
VScroll1.Enabled = (Picture2.Height > VScroll1.Height)
HScroll1.Enabled = (Picture2.Width > HScroll1.Width)
VScroll1.Max = (Picture2.Height - VScroll1.Height) \ 15
HScroll1.Max = (Picture2.Width - HScroll1.Width) \ 15
End Sub
Private Sub LoadGraphic()
' Her tegner/loader du noget ind i Picture2.
' Husk også at sætte Width og Height, hvis
' AutoSize ikke er sat til True eller du ikke
' loader en fil, men selv tegner noget.

' Lige nu loader den Skyer.bmp i Windows-bib.:
' (forudsat at du har det billede)
Picture2.Picture = LoadPicture("C:\Windows\Skyer.bmp")


Picture2.Left = 0
Picture2.Top = 0
VScroll1.Value = 0
HScroll1.Value = 0
Picture1_Resize
End Sub
Private Sub VScroll1_Change()
Picture2.Top = -VScroll1.Value * 15
End Sub
Private Sub VScroll1_Scroll()
Picture2.Top = -VScroll1.Value * 15
End Sub


Du spørger måske hvorfor jeg også har placeret en CommandButton der, når den
ikke bruges til noget - men det gør den faktisk: Den bruges til at dække for
billedet, som ligger nedenunder. Du kan jo prøve at fjerne den og se hvordan
det ser ud.

- Bjarke Walling Petersen



Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408527
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste