Ich kann das Programm mit neuem Steuerelement nicht laufen lassen!
-
Ich erzeuge mein Projekt immer in:
"C:\\Programme\\Microsoft Visual Studio\\MyProjects\\Test".Ich kopiere und speichere den Ordner „Test“ z.B. in „Eigene Datei“.
Dann öffne ich Ordner „Test“ in „Eigene Datei“
und füge im GUI neuen Button ein.In der Methode void CTestDlg::OnButton3() versuche ich this->OnCancel() zu schreiben.
Normalerweise werden nach this-> automatisch alle Methoden gezeigt.
Mein Problem ist: nach this-> werden Methoden überhaupt nicht gezeigt. Warum???
Ich muss OnCancel() selbst eintippen!
Das Programm funktioniert in diesem Fall fehlerfrei.
Kein Compilerfehler, nichts!P.S.
Wenn ich aber "C:\\Programme\\Microsoft Visual Studio\\MyProjects\\Test" öffne und im GUI neuen Button einfüge und
dann versuche in der Methode void CTestDlg::OnButton3() { this->OnCancel();} zu schreiben, dann werden aber nach this-> automatisch alle Methoden gezeigt.
-
Kannst du mir erklären, wie du von
"Intellisense geht nicht" (das Problem)
auf
"Ich kann das Programm nicht laufen lassen!" (deine Beschreibung)
kommst?
-
Wo hast du den Satz "Intellisense geht nicht" in meinem Nachricht gefunden?
-
Das habe ich mich auch gefragt???
Da ich auch gerade einen IntelliSense-"Fehler" hatte, frage ich mal, ob du vorher gecastet hast?
-
goldslawik schrieb:
Wo hast du den Satz "Intellisense geht nicht" in meinem Nachricht gefunden?
Das ist das, was du meinst, dass nun die Funktionen angezeigt werden sollen.
Schau mal unten links in der Statusbar, wenn du es versuchst.
-
goldslawik schrieb:
Normalerweise werden nach this-> automatisch alle Methoden gezeigt.
Mein Problem ist: nach this-> werden Methoden überhaupt nicht gezeigt. Warum???
Das ist genau die Beschreibung für "IntelliSense"
-
Ich verstehe leider nicht:
Was ist IntelliSense-"Fehler" und was bedeutet "gecastet"?Kann mir bitte jemand erklären.
Und was soll ich in mein Programm machen, damit nach this-> alle Methoden automatisch gezeigt werden.
-
Ich dachte ich hätte einen gehabt, war dem aber nicht so.
Casten bedeutet, wenn du eine Typumwandlung machst.int a = 32434; short b = static_cast<short>(a);
Nun hast a vom Typ int in Typ short gepackt.
Mit Datenverlust.Ich habe auf eine altmodische Weise gecastet:
int a = 32434; short b = short(a);
Dann hat nach der letzten Zeile, das IntelliSense nicht mehr funktioniert.
Als ich es mit static_cast<> geschrieben hatte, ging es wieder.Vielleicht kannst du mal schauen, ob es daran liegt.
-
goldslawik schrieb:
Was ist IntelliSense-"Fehler"
Das bedeutet, daß IntelliSense es nicht geschafft hat, durch deinen Code durchzusteigen
und was bedeutet "gecastet"?
"Cast" ist eine andere Bezeichnung für Typumwandlung (durch C-Casts ala ((MyType*)pobj)->... oder C++ Operatoren (static_cast etc.)
-
Ich habe die Lösung in unserem Forum gefunden.
Hier ist ein kleines Ausschnitt:Manchmal kommt die Arbeitsumgebung ein bischen durcheinander. Man muss dann ein paar Dateien löschen, dann sollte es wieder funktionieren (hoffentlich). Allerdings kann man sich dadurch auch eine Menge Arbeit weglöschen, also lieber das komplette Projekt kopieren und sichern und erstmal vorsichtig ausprobieren, ob das Löschen der Dateien wirklich Erfolg bringt !!!
Also: -> Sichern ! -> Projekt schliessen
Und jetzt:
- *.ncb Datei löschen
- *.clw Datei löschen-> Projekt wieder öffnen und den Klassenassistent aufrufen (Menüleiste: Ansicht -> Klassen-Assistent)
-> jetzt kommt irgendeine Meldung "Die Klassen-Assistent-Datenbank ist nicht vorhanden. Soll sie erstellt werden ?" -> mit "Ja" bestätigen und im nächsten Dialog unten rechts "Alle hinzufügen" anklicken und nochmal auf "OK" -> die Klassenansicht sollte jetzt wieder funktionieren.http://www.c-plusplus.net/forum/viewtopic-var-t-is-39072.html
-
Es freut mich, dass Du das Problem beheben konntest.
Allerdings frage ich mich trotzdem noch, weshalb Dein Programm nicht gelaufen sein soll? Naja egal, beim nächsten mal vielleicht das Problem etwas genauer beschreiben.
-
Jep, schön, dass du es geschafft hast.