Avatar billede nakalay Nybegynder
07. april 2002 - 14:02 Der er 11 kommentarer og
1 løsning

JPK! :P

JPK jeg har lavet en dialogbox (og knappen oppe i fil baren der skal "linke" den) hvordan får jeg det til at virke...?
Avatar billede nakalay Nybegynder
07. april 2002 - 17:07 #1
spørgsmål 2: er det en god ide at opgradere fra VC++ 6.0 til .NET ?
Avatar billede jpk Nybegynder
08. april 2002 - 08:18 #2
>> nakalay:
Du bør ikke stile et spørgsmål som dette, til mig!
Jeg er sikker på at der er mange andre her på Eksperten, der kan svare på det...


Højreklik på din dialogboks og vælg ClassWizard, den vil så spørge om du vil lave en ny klasse for dialogen, vælg dette.
Du skal nedarve den nye dialog fra CDialog (det er default når du har valgt dialogen).
Giv klassen et navn, fx CDlgXXX, hvor XXX er et sigende navn for dialogens eksistens. (det er selvfølgelig individuelt hvordan man vælger at navngive sine klasser, men det er en god ide at have en standard herfor).
Når klassen er oprettet, skal du include header-filen der hvor du vil anvende dialogen og så lave en instans af klassen, fx:

CDlgAbout dlg;
dlg.DoModal();

Du kan også checke returværdien fra dialogen, fx:

  int nRet = -1;
  nRet = dlg.DoModal();

  // Handle the return value from DoModal
  switch(nRet)
  {
  case -1:
      AfxMessageBox("Dialog box could not be created!");
      break;
  case IDABORT:
      // Do something
      break;
  case IDOK:
      // Do something
      break;
  case IDCANCEL:
      // Do something
      break;
  default:
      // Do something
      break;
  };


Hvad angår dit andet spørgsmål, så afhænger det nok af dit eget behov og din lyst...
Jeg har selv valgt at vente lidt, men vil da gerne høre om fordele ulemper ved det.
Avatar billede nakalay Nybegynder
08. april 2002 - 09:58 #3
Hvor er det man skal sætte header-filen og den der kode?
Avatar billede jpk Nybegynder
08. april 2002 - 10:01 #4
Koden skal du natruligvis bruge der hvor du vil vise dialogen, fx ved tryk på en knap.

Du skal bare include headeren øverst i den/de fil(er) hvor du bruger dialogen.
Avatar billede nakalay Nybegynder
08. april 2002 - 10:11 #5
OK men med hensyn til koden hvordan sætter jeg den så ind (og hvor? kan ik helt forstå hvor)...
Avatar billede jpk Nybegynder
08. april 2002 - 10:16 #6
Hvornår vil du vise dialogen?
Avatar billede nakalay Nybegynder
08. april 2002 - 10:19 #7
når man trykker på en knap oppe i "fil-baren" ligesom den aboutbox der er i programmet
Avatar billede jpk Nybegynder
08. april 2002 - 10:28 #8
I din MainFrm.cpp, kan du højreklikke et vilkårlæigt sted i koden og vælge ClassWizard. På første faneblad, "Message Maps", finder du (under Object ID's), ID'et på det menupunkt du vil have skal vise dialogen. Markér så COMMAND fil listboksen "Messages:" og klik "Add Function".
Der kommer en ny dialog, der foreslår et navn, du kan enten acceptere navnet, eller skrive et andet.
Klik "OK" og vælg "Edit Code".
Du har nu en kodestupm a la:

void CMainFrame::OnMyButton()
{
}

Her indsætter du koden til at vise dialogen:

void CMainFrame::OnMyButton()
{
  CDlgAbout dlg;
  dlg.DoModal();
}
Avatar billede nakalay Nybegynder
08. april 2002 - 10:38 #9
der kommer fejl:

error C2065: 'CDlgEin' : undeclared identifier
error C2146: syntax error : missing ';' before identifier 'dlg'
error C2065: 'dlg' : undeclared identifier
error C2228: left of '.DoModal' must have class/struct/union type
Avatar billede nakalay Nybegynder
08. april 2002 - 10:43 #10
havde vist bare glemt at sætte #include "DlgEin.h" ind! :)
Avatar billede nakalay Nybegynder
08. april 2002 - 10:45 #11
Er det muligt at lave et "hotspot" på et billede?
Avatar billede nakalay Nybegynder
08. april 2002 - 10:46 #12
glem det sørgsmål med hotspottet skal ikke bruge det
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