Avatar billede tax Nybegynder
18. september 2001 - 14:57 Der er 2 kommentarer og
1 løsning

Oprettelse af et enkelt childvindue.

Jeg arbejder på en applikation i VC++, hvor jeg skal modellere en process, udfra nogle forhold, som jeg kontinuerligt får igennem en socketforbindelse.

Jeg vil anvende hele hovedvinduet til at optegne min model, og drudover have et childvindue der indeholder en form for tekstlog over socketkommunikationen.

Mit problem er nu at jeg skal oprette det childvindue.

Jeg har forsøgt at oprette et nyt vindue ved blot at oprette et HWND, og køre en \"createwindow\". Men jeg har problemer med at gøre dette da jeg ikke er sikker på hvilken hInstance jeg skal bruge.

Skal jeg oprette en ny eller anvende hovedvinduets?

VC++\'s \"hello world\"-framework anvender to funktioner som jeg ikke helt kan se fornuften i.

InitInstance()

ATOM MyRegisterClass(HINSTANCE hInstance)

Jeg kan ikke helt gennemskue hvordan dette skal anvendes, når jeg skal bruge flere vinduer.

Jeg har tidigere arbejdet med MDI, men føler det er lidt overkill for blot et childvindue.

Avatar billede soepro Nybegynder
18. september 2001 - 15:01 #1
Hvis det er et child-vindue, ville jeg anvende hovedvinduets hInstance - så \"dør\" childen sammen med hovedvinduet.

I C++ Builder ville man bare oprette to forms, og lade programmet initiere begge ved opstart. Herved kunne de bruges sidestillet. (Hovedformen ville så skulle have fokus - normal gøres dette ved at danne den sidst.)
Avatar billede rasmusneckelmann Nybegynder
18. september 2001 - 18:41 #2
Et vindue har ikke et HINSTANCE (correct me if Im wrong), det er kun processer (programmer) der har det. Du skal bruge den HINSTANCE som WinMain får leveret, det er helt klart det mest simple, og det virker i de fleste situationer. Hvis du vil lave et child vindue skal du da bare vælge hovedvinduet som parent når du kører CreateWindow for at lave child vinduet... jeg kan ikke se hvad problemet er... måske fordi jeg er dum?  :)

Avatar billede tax Nybegynder
19. oktober 2001 - 07:51 #3
Thanx.
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