Gå til innhold

Anbefalte innlegg

Videoannonse
Annonse

Takk for svar, men det var da ikke akkurat sånn jeg mente... :no: (skal ikke loade bilder)

 

 

Jeg skal loade en ny picure box inni den som er der fra før...

 

Når jeg gjør som under kommer ikke den nye pictureboxen inni den andre... Den kommer liksom bare rett på formen...

 

 

With frmMain
   Load .picWin(.picWin.Count)
       .picWin(.picWin.Count - 1).Top = .picWin(.picWin.Count - 2).Top + .picWin(.picWin.Count - 2).Height
       .picWin(.picWin.Count - 1).Visible = True
End With

 

Noen som skjønner?

Lenke til kommentar

Du må lage en Array av IPictureDisp, trenger du mer en bare et bilde burde du lage en struktur (Type)

Public type PictureBoxStruct
   Picture As IPictureDisp
   m_Width As Long
   m_Height As Long
   m_X As Long
   m_Y As Long
   m_Name As String
End Type

 

Lag en array av strukturen, for å sette bilde, setter gjør du slik:

 

  Set Arr(index).Picture = LoadPicture(Filename)

 

Tegn bildene selv inne i pictureboxen, skal de bli der, må du sette picturebox.AutoRedraw = True,

Eller tegne dem i Paint event.

 

 

Du kan ikke lage nye objekter i VB, (du kan i VB.NET)

Da må du i så fall bruke CreateWindow og RegisterClassEx, noe som er fryktelig avansert.

Lenke til kommentar

Jeg skjønner ikke helt hva du mener men... Jeg tror ikke det er sånn...

...Den koden jeg posta viste hvordan man kan loade nye pictureboxer som kommer underhverandre... :thumbup:

 

 

Det jeg vil er at den skal komme inni pictureboxen og ikke på utsiden...

 

 

OK.... Jeg har 1 Picturebox. La oss kalle den pic(0). Så har jeg en CommandButton(cmd). Når jeg trykker på "cmd" skal det komme en ny Picturebox(pic(1)) som skal komme inne i pic(0)...

 

Når jeg skriver inne i så mener jeg at den skal være inni sånn som når du drar en picturebox inni en annen picturebox "i design mode". Det går da ikke ann å dra den ut av pictureboxen....

 

 

Noen som skjønner nå? Nå begynner ihvertfall jeg å gå tom for forklaringsmåter...

Lenke til kommentar

Jeg skjønner :thumbup: . Den enkleste metoden er å bruke API callen SetParent. Koden blir vel noe sånt:

 

Private Declare Function SetParent Lib "user32" (ByVal hWndChild As Long, ByVal hWndNewParent As Long) As Long

Private Sub cmd1_Click()

Load pic(1)
SetParent pic(1).hWnd, pic(0).hWnd
pic(1).Visible = True

End Sub

 

Håper du forstår hva jeg vil fram til.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...