Avatar billede jps2mt Nybegynder
03. november 2005 - 22:30 Der er 5 kommentarer og
1 løsning

Lave ny MDIChild fra en "skabelon"

Jeg sidder og arbejder på et admin program til et større site jeg har, og derfor har jeg brug for at kunne åbne flere MDIChilds med brugerinfo, samme udseende men med forskellig data til de forskellige felter.

Spørgsmålet er så hvordan jeg dynamisk kan oprette en ny form når jeg beder programmet om at hente brugerinfo for en ny bruger?

Det skal nok lige siges at det er VB 6 jeg laver det i.
Avatar billede 0xffff Nybegynder
04. november 2005 - 09:55 #1
Måden jeg ville gøre det på

Dim oNewForm as new [FormNavn]
[FormNavn].Contructor (param1,param2,param3,param4 ....)

Ændre din [FormNavn] til at være en MDIChild

På din MDIChildform lav en sub:

public sub Constructor (param1 as xxx, param2 as xxx ......)
'Initialiser dine værdier.
'Kunne f.eks være BrugerNummmer osv.
'Eksempel

Me.Caption = param1
end sub
Avatar billede jps2mt Nybegynder
04. november 2005 - 12:24 #2
Den tror jeg ikke lige jeg forstår...

Hvor angiver man så hvilke tekstfelter, labels samt placeringer af disse til den ny form??

Og hvad er param1, param2 osv. for parametre??
Avatar billede olebole Juniormester
04. november 2005 - 12:37 #3
<ole>

Formen 'FormNavn' er din template-form med tilhørende kontroller.

Parametrene er eksempler på de værdier, der skal sættes i den instans af din template, du åbner. Således har 0xffff tænkt, at 'param1' f.eks. kunne indeholde formens Caption-tekst.

Hvilke parametre, der derudover skal sættes, ved kun du  ;o)

/mvh
</bole>
Avatar billede jps2mt Nybegynder
04. november 2005 - 12:40 #4
Aha, på den måde...Vil straks efterprøve det ;)
Avatar billede 0xffff Nybegynder
04. november 2005 - 12:43 #5
Du bygger din form op som en ganske almindelig form. Med alle de tekstfelter, labels osv som du vil have på den.

Derefter sætter du Egenskaben MDIChild til true for formen.

Param er dine parametre. Jeg bruger generiske udtryk fordi jeg ikke kender til navne på de parametre som du vil sende afsted til formen.

Kunne ligeså godt være

På din MDI Parent form
Dim frmKundeOplysningsForm as new KundeOplysningsForm
frmKundeOplysningsForm.Contructor (123, "Brian", "Hansen")


På din MDI child form
public sub Constructor (Kundenr as integer, KundeForNavn as string, KundeEfterNavn as string)

Me.Caption Kundenr & ", " & KundeEfterNavn & ", " & KundeForNavn
End sub
Avatar billede jps2mt Nybegynder
04. november 2005 - 12:49 #6
Perfect :) Takker...
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