|
| [win32] DialogBox mangler vinduesklassen Fra : Anders Borum |
Dato : 11-04-02 11:44 |
|
Hej allesammen.
Jeg håber nogen af jer tidligere har lavet win32 gui-
programmering uden mfc, så i kan hjælpe. Mit problem
er sikkert helt banalt, men jeg kan simpelthen ikke
lure det.
Jeg har bygget en flot lille Dialog-boks i et delværktøj
i Visual C++ og gemt den som en ressource i min programfil.
Prøver jeg at vise den ved at kalde DialogBox, får jeg
fejlmeddelelsen "Vinduesklassen kan ikke findes".
Debugger jeg programmet ser jeg at min DialogProc-funktion
bliver kaldt, men at fejlen opstår første gang jeg ikke
eksplicit håndterer en af WM_ meddelelserne.
Det undrer mig meget, for jeg forestillede mig at alle
Dialog-Bokse delte samme vinduesklasse som jeg derfor
ikke skulle bekymre mig om.
Er der en som kan lede mig på rette spor?
Venlig hilsen Anders
| |
Mogens Hansen (11-04-2002)
| Kommentar Fra : Mogens Hansen |
Dato : 11-04-02 14:35 |
|
"Anders Borum" <overflade@fedt.dk> wrote
>
> Jeg har bygget en flot lille Dialog-boks i et delværktøj
> i Visual C++ og gemt den som en ressource i min programfil.
> Prøver jeg at vise den ved at kalde DialogBox, får jeg
> fejlmeddelelsen "Vinduesklassen kan ikke findes".
> Debugger jeg programmet ser jeg at min DialogProc-funktion
> bliver kaldt, men at fejlen opstår første gang jeg ikke
> eksplicit håndterer en af WM_ meddelelserne.
>
Prøv at kigge i din resource file, om du har angivet et forkert navn på en
kontrol i dialogen.
Prøv at fjerne alle kontroller i dialogen, og tilføj dem een af gangen.
>
> Er der en som kan lede mig på rette spor?
>
Prøv at poste det mindste eksempel du kan lave, som fejler.
Venlig hilsen
Mogens Hansen
| |
Anders Borum (11-04-2002)
| Kommentar Fra : Anders Borum |
Dato : 11-04-02 22:50 |
|
"Mogens Hansen" <mogens_h@dk-online.dk> skrev i en meddelelse
news:3cb59106$1@lxcs1.manbw.dk...
[klip]
> Prøv at kigge i din resource file, om du har angivet et forkert
> navn på en kontrol i dialogen.
> Prøv at fjerne alle kontroller i dialogen, og tilføj dem een af gangen.
Hej Mogens.
Jeg havde ikke troet problemet kunne være i de enkelte
objekter i min dialog, men på din opfordring prøvede jeg
at bygge dialogen forfra og teste den efter hver enkel
tilføjelse.
Synderen viste sig at være en ip-adresse-kontrol, som
forstyrrer ligemeget hvordan jeg tilføjer den. Løsningen
blev at udskifte denne meget specifikke kontrol med et
mere generelt input-felt.
Mange tak for hjælpen.
Hilsen Anders
| |
Mogens Hansen (12-04-2002)
| Kommentar Fra : Mogens Hansen |
Dato : 12-04-02 05:49 |
|
"Anders Borum" <overflade@fedt.dk> wrote
> "Mogens Hansen" <mogens_h@dk-online.dk> skrev
>
> Jeg havde ikke troet problemet kunne være i de enkelte
> objekter i min dialog, men på din opfordring prøvede jeg
> at bygge dialogen forfra og teste den efter hver enkel
> tilføjelse.
>
Jo, man kan kun oprette vinduer, der er enten er indbygget i MS-Windows
eller registreret med funktionen "RegisterClass".
> Synderen viste sig at være en ip-adresse-kontrol, som
> forstyrrer ligemeget hvordan jeg tilføjer den. Løsningen
> blev at udskifte denne meget specifikke kontrol med et
> mere generelt input-felt.
>
En anden løsning er at registere ip-adresse-kontroller - det må stå i noget
dokumentation hvordan det gøres.
Venlig hilsen
Mogens Hansen
| |
bop (12-04-2002)
| Kommentar Fra : bop |
Dato : 12-04-02 16:21 |
|
"Mogens Hansen" <mogens_h@dk-online.dk> wrote in message
news:a95p93$1e08$1@news.cybercity.dk...
> Jo, man kan kun oprette vinduer, der er enten er indbygget i MS-Windows
> eller registreret med funktionen "RegisterClass".
>
> > Synderen viste sig at være en ip-adresse-kontrol, som
> > forstyrrer ligemeget hvordan jeg tilføjer den. Løsningen
> > blev at udskifte denne meget specifikke kontrol med et
> > mere generelt input-felt.
> >
Prøv i opstarten at kalde InitCommonControlsEx med ICC_INTERNET_CLASSES i
dwICC.
--
BopBop
| |
|
|