JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.phpMedaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Wo ist die Hauptschleife??
Gehe zu Seite 1, 2  Weiter
 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Fragen, Antworten und Kritik
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
TheMillenium
Dark JLI'ler



Anmeldedatum: 21.07.2002
Beiträge: 1427
Wohnort: World
Medaillen: Keine

BeitragVerfasst am: 30.06.2006, 21:31    Titel: Wo ist die Hauptschleife?? Antworten mit Zitat

Hi Leute!
Habe lange nicht mehr programmiert...
und hab mir jetzt den Visual C++ 2005 Express Editor gezogen und installiert. Smile

Bin dann gleich auf Project->CLR-->Windows Form Application gegangen.
Dort hab ich dann ein Label im Form1.h erstellt.
(Also in MFC wärs nun einfach ein Windowsfenster mit einem Textelement)

Nun will ich den Text aber ca. jede halbe Sekunde verändern, und das Programm soll von einem kurzen Satz immer das nächste Wort an der Textstelle anzeigen.

Der Verweis zu der Textstelle ist: this->label1->Text = L"EinWort";

Aber wo verdammt, ist die mainloop damit ich das überhaupt machen kann. Ich weiß für dieses Problem könnte ich auch das ganze in DirectX machen, da muss ich aber selber soviel Code schreiben...außer ich würde die Cd von Christian (Rouselle) finden und einfach den Code als Grundlage nehmen. Aber das muss doch hier auch möglich sein?
_________________
The source of all power is in its destiny...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Fallen
JLI MVP
JLI MVP


Alter: 40
Anmeldedatum: 08.03.2003
Beiträge: 2860
Wohnort: Münster
Medaillen: 1 (mehr...)

BeitragVerfasst am: 30.06.2006, 21:40    Titel: Antworten mit Zitat

Afaik wird das in der Klasse System::Windows::Forms::Form behandelt.

Die Schleife wird per Application::Run(gcnew Form1());

oder wie auch immer dein Hauptfenster heisst gestartet.

Um das zu erreichen was du möchtest empfehle ich dir einen Timer dem Fenster hinzuzufügen ihn auf 500 Millisekunden einzustellen und das Tick Ereignis abzufangen.
_________________
"I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse."
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
TheMillenium
Dark JLI'ler



Anmeldedatum: 21.07.2002
Beiträge: 1427
Wohnort: World
Medaillen: Keine

BeitragVerfasst am: 01.07.2006, 13:26    Titel: Antworten mit Zitat

Das ist doch aber nur der Konstruktor. Auf jeden Fall klappt z.B. das nicht:
Code:
      this->label1->Text = L"label1";
      Sleep(200);
      this->label1->Text = L"1lebal";
      Sleep(100);

da steht dann nur 1lebal da. Aber es verändert sich nicht.

Und ich habe keine Ahnung wie ich da die Nachrichtenschleife einbauen kann...Sad
_________________
The source of all power is in its destiny...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Fallen
JLI MVP
JLI MVP


Alter: 40
Anmeldedatum: 08.03.2003
Beiträge: 2860
Wohnort: Münster
Medaillen: 1 (mehr...)

BeitragVerfasst am: 01.07.2006, 13:51    Titel: Antworten mit Zitat

Application::Run führt die Nachrichtenschleife eines Objektes vom Typ Form auf welches du an Run übergeben musst, dies geschieht indem du eine Instanz erstellst und zwar mit gcnew Form1().

Du wirst daher so nicht an die Schleife herankommen.

Nun zu deiner Label Sache:

Hast du denn wie ich geraten habe die Timer Komponente in deine Form gelegt? Wenn du nicht weisst wie das geht dann bevolge einfach das hier:

Doppelklick in der Projektansicht auf dein Formular (Form1) dann die Wekzeugleiste (Toolbox) Anzeigen und eine Stopuhr suchen, diese komponente mit einem Doppelklick nun dem Formular hinzufügen.

Die Eigenschaften des Timers entsprechend anpassen (Enabled=True Intervall=500). Nun auf den Timer doppelklicken, darauf hin sollte der Quellcode angezeigt werden der dein Formular hält.

Der Cursor müsste nun in

CPP:
void label1_Tick(irgendwelche parameter)
{

}


blinken.

Genau dort sollte die Eingabe deies Codeparts dsa tun was du möchtest.


CPP:
void label1_Tick(irgendwelche parameter)
{
  static bool mb_Switch = false;
  mb_Switch = !mb_Switch;
 
  if(mb_Switch)
    this->label1->Text = L"label1";
  else
    this->label1->Text = L"1lebal";
}

_________________
"I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse."
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
TheMillenium
Dark JLI'ler



Anmeldedatum: 21.07.2002
Beiträge: 1427
Wohnort: World
Medaillen: Keine

BeitragVerfasst am: 01.07.2006, 14:26    Titel: Antworten mit Zitat

Vielen Dank!! Es klappt. Smile

Kennst du noch irgendeine Seite die du mir zur Programmierung mit Windows Form Application empfehlen könntest?
_________________
The source of all power is in its destiny...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Fallen
JLI MVP
JLI MVP


Alter: 40
Anmeldedatum: 08.03.2003
Beiträge: 2860
Wohnort: Münster
Medaillen: 1 (mehr...)

BeitragVerfasst am: 01.07.2006, 18:09    Titel: Antworten mit Zitat

learning by doing

Seiten kenne ich keine, aber so komplex ist die Sache nun auch wieder nicht Wink einfach ein wenig damit spielen.

Aber mal was anderes, wieso tust du die Windowsprogrammierung mit CLR an? Hab damit nur schlechte Erfahrungen gesammelt. Willst du deine Engine damit nutzen, oder ähnliches?
_________________
"I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse."
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
TheMillenium
Dark JLI'ler



Anmeldedatum: 21.07.2002
Beiträge: 1427
Wohnort: World
Medaillen: Keine

BeitragVerfasst am: 01.07.2006, 18:55    Titel: Antworten mit Zitat

Nein, aber ich finde die CD von Christian nicht, wo das gute alte Visual C++ 6.0 Autoren Edition drauf ist. Also hab ich mich kurz im Netz umgeschaut und diese Express Version gefunden. Bei Win32 kann die aber nur ein Console Project erstellen...Sad Und meine alten Projekte kann die ja auch nicht importieren. Wollte mal aus Spass ein etwas "anderes" Vokabellernprogramm schreiben...aber am liebsten würde ich das mit meiner "ColdWater-Engine" machen, die ich damals geschrieben hatte. Bin ganz schön über den Code erstaunt der dadrinnen steht, desto mehr will auch damit wieder weiterarbeiten. Aber dazu brauch ich wohl einen anderen Compiler...Sad Hast du vielleicht ein Tip? Am besten wo ich die Autorenversion herkriege? Ich will halt die Funktion dass ich die Parameter von den Windowsfunktionen angezeigt bekomme, währrend ich schreibe....mehr eigentlich nicht.
_________________
The source of all power is in its destiny...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
TheMillenium
Dark JLI'ler



Anmeldedatum: 21.07.2002
Beiträge: 1427
Wohnort: World
Medaillen: Keine

BeitragVerfasst am: 01.07.2006, 19:17    Titel: Antworten mit Zitat

Hat sich erledigt. Ich hab jetzt die Autorenversion bei dem 21 Tage C++ Buch auf der Cd gefunden.

Ja, und Win32 Window Applications kann ich jetzt doch erstellen....aber wenn ich das nicht importieren kann, bringt es mir rein gar nichts...Sad

Gibt es da zufällig das als externes Tool?

edit: Okay was ich fast befürchtet habe. Ich hatte die meistens Projekte anscheinend mit Visual C++ 2003 erstellt und die Project Files sind da nicht mehr .dsw....aber bei der Express kann ichs nicht importieren....bleibt mir wohl nichts anders übrig außer es neuzuinstallieren...
_________________
The source of all power is in its destiny...


Zuletzt bearbeitet von TheMillenium am 01.07.2006, 19:28, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Fallen
JLI MVP
JLI MVP


Alter: 40
Anmeldedatum: 08.03.2003
Beiträge: 2860
Wohnort: Münster
Medaillen: 1 (mehr...)

BeitragVerfasst am: 01.07.2006, 19:18    Titel: Antworten mit Zitat

IntelliSense meinst du? Das sollte doch per Standard immer aktiv sein oO

Zumindest ist es bei mir so. Ansonsten zum anderen problem, suche einfach mal hier im Forum, irgendwo gabs mal nen Thread in dem Stand wie man kostenlos zu ner legalen und anständigen VS Version kommt. Inklusive Anleitung das ganze zum laufen zu bewegen Smile

Edit: Erstelle einfach ein neues Projekt und füge deine Daten hinzu wenn es nicht zu konvertieren geht.
_________________
"I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse."
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
GreveN
JLI Master


Alter: 38
Anmeldedatum: 08.01.2004
Beiträge: 901
Wohnort: Sachsen - Dresden
Medaillen: Keine

BeitragVerfasst am: 01.07.2006, 21:58    Titel: Antworten mit Zitat

Das hier?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Yahoo Messenger MSN Messenger
Fallen
JLI MVP
JLI MVP


Alter: 40
Anmeldedatum: 08.03.2003
Beiträge: 2860
Wohnort: Münster
Medaillen: 1 (mehr...)

BeitragVerfasst am: 01.07.2006, 22:24    Titel: Antworten mit Zitat

Wow, eins muss man Patrick lassen, fleissig ist er Smile Sauber!
_________________
"I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse."
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
TheMillenium
Dark JLI'ler



Anmeldedatum: 21.07.2002
Beiträge: 1427
Wohnort: World
Medaillen: Keine

BeitragVerfasst am: 02.07.2006, 13:57    Titel: Antworten mit Zitat

Ja, IntelliSense ist bei Visual C++ immer integriert, aber ich denk nicht bei allen anderen Compilern, vor allem bei den kostenlosen.

Also hab das jetzt auf meinem anderen Rechner installiert und da geht es jetzt einwandfrei zu importieren. Muss jetzt nur wieder die Platform SDK runterladen, und dann noch die Directories von dieser SDK und der DirectX SDK hinzufügen und hoffen das alles klappt.

Also neues Projekt und alle Dateien hinzufügen hätte glaub ich nicht geklappt. Hab bei meiner Engine nämlich fünf Ordner gehabt, einer mit der Interfaceschnittstelle, einer mit der Debugging-Engine, einer den Core, Grafik und dann noch den Ressourcenmanager. Glaub nicht dass ich das alles mir wieder hätte zusammenreimen können. Ich seh ja jetzt auch fünf "Ordner" in der IDE, und für jeden öffnet sich dann Source Files, Header und Resource...

Ja, Patrick hat das sehr ausführlich gemacht. War bestimmt aufwendig das Tutorial zu erstellen. Ich kann ja Englisch da war für mich das tolle Tutorial von MS ausreichend...
_________________
The source of all power is in its destiny...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
unsigned long
Junior JLI'ler



Anmeldedatum: 02.07.2006
Beiträge: 52

Medaillen: Keine

BeitragVerfasst am: 02.07.2006, 19:13    Titel: Antworten mit Zitat

Fallen hat Folgendes geschrieben:
Wow, eins muss man Patrick lassen, fleissig ist er Smile Sauber!
Das hört man gerne von seinem Erzgegner Rolling Eyes
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Fallen
JLI MVP
JLI MVP


Alter: 40
Anmeldedatum: 08.03.2003
Beiträge: 2860
Wohnort: Münster
Medaillen: 1 (mehr...)

BeitragVerfasst am: 03.07.2006, 12:16    Titel: Antworten mit Zitat

unsigned long hat Folgendes geschrieben:
Fallen hat Folgendes geschrieben:
Wow, eins muss man Patrick lassen, fleissig ist er Smile Sauber!
Das hört man gerne von seinem Erzgegner Rolling Eyes


Hab dich eigentlich nie als einen solchen betrachtet, gelegentlicher Zorn war zwar oft bei unseren Geplänkeln dabei aber mehr auch wieder nicht Smile
_________________
"I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse."
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
unsigned long
Junior JLI'ler



Anmeldedatum: 02.07.2006
Beiträge: 52

Medaillen: Keine

BeitragVerfasst am: 03.07.2006, 14:15    Titel: Antworten mit Zitat

Fallen
Hmn gut, wie bei mir Rolling Eyes
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Fragen, Antworten und Kritik Alle Zeiten sind GMT
Gehe zu Seite 1, 2  Weiter
Seite 1 von 2

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de

Impressum