Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  AutoCAD ObjectARX und .NET
  Fenster (Win-Form) erstellen

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
Autor Thema:  Fenster (Win-Form) erstellen (2580 mal gelesen)
THE_ONE
Mitglied
Student, Alter:23


Sehen Sie sich das Profil von THE_ONE an!   Senden Sie eine Private Message an THE_ONE  Schreiben Sie einen Gästebucheintrag für THE_ONE

Beiträge: 299
Registriert: 27.04.2005

AMD XP 2000, 512MB-RAM, WIN XP Pro
Readon 9600Pro
VIZ 2005, Autocad 2005

erstellt am: 17. Dez. 2006 23:17    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo!

Weiß jemand ein Tutorial, oder wo einem gezeigt wird wie man so ein Fenster wie das, dass sich z.B. beim Blockeinfüge Befehl öffnet selber macht. Oder weiß jemand ein paar Zeilen Code die mir helfen würden??

MFG THE_ONE

Ps: Hab jetzt gesehen das es ein MFC Tutorial gibt bei ARX for Dummies

[Diese Nachricht wurde von THE_ONE am 18. Dez. 2006 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

THE_ONE
Mitglied
Student, Alter:23


Sehen Sie sich das Profil von THE_ONE an!   Senden Sie eine Private Message an THE_ONE  Schreiben Sie einen Gästebucheintrag für THE_ONE

Beiträge: 299
Registriert: 27.04.2005

AMD XP 2000, 512MB-RAM, WIN XP Pro
Readon 9600Pro
VIZ 2005, Autocad 2005

erstellt am: 18. Dez. 2006 23:00    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

So!
Hätte jetzt den MFC Blog von ARX DUmmies gelesen aber irgendwie komme ich da auf keine grünen Zweig! Irgendwie habe ich das gefühl das er ziemlich viel überspringt! Denn das was in diesem Blog steht, das erzeugt mir der ARX Wizard automatisch. Was muss ich jetzt dazuschreiben damit sich so ein Fenster öffnet?? und überhaupt wie lege ich fest mit welchem Befehl er das Fenster öffnet?

Mal was grundsätzliches, wann erzeuge ich eigentlich eine ARX, DBX und DLL Datei. Von wo weiß ich was ich erzeugen muss?? Sind das eigentlich nur Dateiendungen oder erzeugt der Compiler auch anderen CODE??

MFG THE_ONE

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

criecky
Mitglied
MENSCH


Sehen Sie sich das Profil von criecky an!   Senden Sie eine Private Message an criecky  Schreiben Sie einen Gästebucheintrag für criecky

Beiträge: 251
Registriert: 13.01.2004

ACAD 2011- 2017
www.cbyte.eu

erstellt am: 19. Dez. 2006 11:31    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für THE_ONE 10 Unities + Antwort hilfreich

hallo,

am einfachsten ist es, wenn du deinen dialog einer bestehenden dialogklasse ableitest. wie zb. von CDialog oder besser von  CAcUiDialog (

Code:
class CPreviewBlockDialog : public CAcUiDialog
). Dann erzeugst du ein objekt mittels
Code:
CPreviewBlockDialog MyBlockDialot;
und rufst deinen dialog über
Code:
CPreviewBlockDialog.DoModal();
auf.
Wenn du mehr infos möchtest schau einfach mal in den mfc, bei cdialog oder google danach.

DBX und ARX und DLL sind IMHO gleich im aufbau ..... also eine arx ist das gleiche wie eine dll. eine dbx muss zusätzlich noch registriert werden und wird benutzt um neu objekt (z.b. wand, fenster)  zu erzeugen.

gruss criecky 

------------------

Softlan macht das Netzwerk weich!

www.cbyte.de

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

THE_ONE
Mitglied
Student, Alter:23


Sehen Sie sich das Profil von THE_ONE an!   Senden Sie eine Private Message an THE_ONE  Schreiben Sie einen Gästebucheintrag für THE_ONE

Beiträge: 299
Registriert: 27.04.2005

AMD XP 2000, 512MB-RAM, WIN XP Pro
Readon 9600Pro
VIZ 2005, Autocad 2005

erstellt am: 19. Dez. 2006 16:13    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hi!

Besten Dank, leider bekomme ich da immer folgende Fehlermeldung!

Code:
c:\lab\stepmfc\stepmfc\stepmfc.cpp(68) : error C2512: 'CPreviewBlockDialog': Kein geeigneter Standardkonstruktor  verfügbar

mein Code sieht so aus:

Code:

#include "StdAfx.h"
#include "resource.h"
#include <afxdllx.h>
#include <acuiDialog.h>
#include "AcExtensionModule.h"
//-----------------------------------------------------------------------------
//- Define the sole extension module object.
AC_IMPLEMENT_EXTENSION_MODULE(stepMFCDLL)
//- Please do not remove the 3 following lines. These are here to make .NET MFC Wizards
//- running properly. The object will not compile but is require by .NET to recognize
//- this project as being an MFC project
#ifdef NEVER
AFX_EXTENSION_MODULE stepMFCExtDLL ={ NULL, NULL } ;
#endif

class CPreviewBlockDialog : public CAcUiDialog
{

};


//- Now you can use the CAcModuleResourceOverride class in
//- your application to switch to the correct resource instance.
//- Please see the ObjectARX Documentation for more details
//-----------------------------------------------------------------------------
//- DLL Entry Point

void testCreate()
{
CPreviewBlockDialog MyBlockDialot;
CPreviewBlockDialog.DoModal();
}

extern "C" BOOL WINAPI DllMain (HINSTANCE hInstance, DWORD dwReason, LPVOID lpReserved) {
//- Remove this if you use lpReserved
UNREFERENCED_PARAMETER(lpReserved) ;

if ( dwReason == DLL_PROCESS_ATTACH ) {
        _hdllInstance =hInstance ;
stepMFCDLL.AttachInstance (hInstance) ;
InitAcUiDLL () ;
} else if ( dwReason == DLL_PROCESS_DETACH ) {
stepMFCDLL.DetachInstance () ;
}
return (TRUE) ;
}



Wird der Konstruktor nicht mitvererbt? Oder verwende ich den Konstruktor falsch? Wie gehts richtig? Vielleicht kann mir ja wer helfen.
MFG THE_ONE

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

criecky
Mitglied
MENSCH


Sehen Sie sich das Profil von criecky an!   Senden Sie eine Private Message an criecky  Schreiben Sie einen Gästebucheintrag für criecky

Beiträge: 251
Registriert: 13.01.2004

ACAD 2011- 2017
www.cbyte.eu

erstellt am: 20. Dez. 2006 09:57    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für THE_ONE 10 Unities + Antwort hilfreich

hallo

Code:
CPreviewBlockDialog(CWnd* pParent = NULL);  // standard constructor

gruss 

------------------

Softlan macht das Netzwerk weich!

www.cbyte.de

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

THE_ONE
Mitglied
Student, Alter:23


Sehen Sie sich das Profil von THE_ONE an!   Senden Sie eine Private Message an THE_ONE  Schreiben Sie einen Gästebucheintrag für THE_ONE

Beiträge: 299
Registriert: 27.04.2005

AMD XP 2000, 512MB-RAM, WIN XP Pro
Readon 9600Pro
VIZ 2005, Autocad 2005

erstellt am: 20. Dez. 2006 13:51    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hi!

Das sollte dann also so aussehen (kann es leider ned probieren da ich grad kein ACAD und kein VS bei der Hand hab):

Code:
class CPreviewBlockDialog : public CAcUiDialog
{
    CPreviewBlockDialog(CWnd* pParent = NULL);
};

ist das dann alles? also die Objekterstellung änder sich also nicht??

Code:
CPreviewBlockDialog MyBlockDialot;

bleibt also gleich.
MFG THE_ONE

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

criecky
Mitglied
MENSCH


Sehen Sie sich das Profil von criecky an!   Senden Sie eine Private Message an criecky  Schreiben Sie einen Gästebucheintrag für criecky

Beiträge: 251
Registriert: 13.01.2004

ACAD 2011- 2017
www.cbyte.eu

erstellt am: 20. Dez. 2006 18:37    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für THE_ONE 10 Unities + Antwort hilfreich

di object erstellung ändert sich nicht. aber die def. des kostruktors musst du schon anpasssen.

z.b.

Code:
CPreviewBlockDialog::CPreviewBlockDialog(CWnd* pParent /*=NULL*/)
: CAcUiDialog(CPreviewBlockDialog::IDD, pParent)
{
}

schau einfach mal unter samples\graphics\Blockview im sdk.

gruss criecky 

------------------

Softlan macht das Netzwerk weich!

www.cbyte.de

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

THE_ONE
Mitglied
Student, Alter:23


Sehen Sie sich das Profil von THE_ONE an!   Senden Sie eine Private Message an THE_ONE  Schreiben Sie einen Gästebucheintrag für THE_ONE

Beiträge: 299
Registriert: 27.04.2005

AMD XP 2000, 512MB-RAM, WIN XP Pro
Readon 9600Pro
VIZ 2005, Autocad 2005

erstellt am: 21. Dez. 2006 12:29    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hi!

Hab den Konstruktor wie du gesagt hast geändert:

Code:
class CPreviewBlockDialog : public CAcUiDialog
{
public:
  CPreviewBlockDialog(CWnd* pParent /*=NULL*/): CAcUiDialog(CPreviewBlockDialog::IDD, pParent)
  {
  }
};

und habe dann ein Objekt erstellt und dann die Methode DoModal aufgerufen!

Code:

void testCreate()
{
  CPreviewBlockDialog MyBlockDialot(NULL);
  MyBlockDialot.DoModal();
}

Dank deiner Hilfe kompiliert jetzt das ganze ohne Fehler nur leider wenn ich dann das ganze ausführe öffnet sich kein Fenster es tut sich einfach nichts!

MFG THE_ONE

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz