Zum Inhalt springen

Artery

Mitglieder
  • Gesamte Inhalte

    91
  • Benutzer seit

  • Letzter Besuch

Alle Inhalte von Artery

  1. Hey, Ich hab mir im Internet einen abgesucht, weil ich versucht habe den inhalt einer std::string Variable in eine CString Variable zu speichern.. Letzten endes hat mir nen Kumpel gesagt ich soll mal damit probieren: CString csNewUsername = static_cast<LPCTSTR>(szNewUsername); Der Compiler sagt aber, das er keine passende konvertierung von std::string in LPCTSTR gefunden hat :/ Aber ich würde gerne Unicode behalten, weil wenn ich mein Projekt auf "nicht festegelegt" oder "Multibyte" beim Zeichensatz stelle, sehen die Comboboxen total seltsam aus, wenn ich die aufklappe zeigt er mir nur einen String an und ich muss so komisch rechts runterscrollen =O Ich hoffe ihr könnt mir helfen MfG Artery
  2. Ähm moment, also ich hätte vorhin nicht button sagen sollen Also ich habe entweder ne Picture Control und ein Static text, wie weiß ich jetzt genau wann die maus auf ihnen dauf ist? =/
  3. Hab ich doch gesagt =O Also ich will folgendes: Wenn der Mauszeiger über einem Steuerelement ist, dass ihrgendetwas passiert Ich hatte etwas rumgesucht und wurde soweit fündig, dass es keine Meldung wie move_in oder move_on oder sowas gibt. Also wollte ich mir das Ganze selber basteln, in dem ich die Meldung Mouse_move benutze also immer wenn sich die Maus bewegt, frage ich die Koordinaten ab. Dann gleiche ich diese Koordinaten mit den Positionen von den Steuerelementen ab um herauszufinden, ob sich die Maus auf einem dieser Steuerelementen z.b. einem Button befindet!
  4. Achso ohh man, wenn man in rage ist dann vergisst man aber auch alles... Ja klar =) danke
  5. Ganz ehrlich ich komme nicht so gut damit klar und habe diesen Teil des Codes aus dem Internet... Meine Intention war es, die aktuelle Positon des Mauszeigers abzufragen und dann wollte ich gucken ob die Position des Mauszeigers innerhalb des Buttons ist (also er auf dem Button ist) Wenn wer eine bessere Idee hat das umzusetzen dann bitte
  6. Wieso schaut das komisch aus? Das BC steht bei mir für ButtonControl, damit man aus der ID auch heraus sehen kann um was es sich für ein Controltyp handelt und es richtig so, habe es EXTRA nochmal überprüft..
  7. Wenn es diese Funktion in meiner Klasse geben würde, hätte ich es darein auch gepackt es gibt aber keine solche Funktion :/
  8. Seltsamerweise steht in pWnd nach dieser Zeile CWnd *pWnd = AfxGetApp()->GetMainWnd()->GetDlgItem(IDBC_VOCTRAIN); nichts... Aber ich verstehe das einfach nicht.. Weil GetDlgItem gibt genau CWnd* zurück.. Ich bin so sher am verzweifeln, MFC ist so ein dreckiger ****** ganz ehrlich!
  9. Also ich habe das Ganze jetzt in "OnInitialUpdate()" gepackt und jetzt funktioniert es einwandfrei! So jetzt habe ich aber ein zweiten Dialog, wenn der geöffnet wird möchte ich wieder folgendes machen: m_cFontButtonFont.CreateFont(8, 0, 0, 0, FW_BOLD, 0, 0, 0, DEFAULT_CHARSET, OUT_CHARACTER_PRECIS, CLIP_CHARACTER_PRECIS, DEFAULT_QUALITY, DEFAULT_PITCH | FF_DONTCARE, _T("Consolas")); CStatic *p_cStaticEditElement=(CStatic*)GetDlgItem(IDSC_PRFLMNGRACCPTPRFLTXT); p_cStaticEditElement->SetFont(&m_cFontButtonFont); GetDlgItem(IDSC_PRFLMNGRACCPTPRFLTXT)->SetWindowText(_T("Ghostmode")); Der Dialog hat jetzt eine Klasse die von DialogEX abgeleitet ist. Darin habe ich kein "OnIntialUpdate". Ich weiß jetzt nicht wo ich das hinpacken soll... Ich habe mir einfach eine Funktion geschrieben in der das nun passieren soll. Ich war mir nicht ganz sicher wie ich sie aufrufen soll, also wenn ich sie nachdem Konstruktor aufrufe bekomme ich wieder nen Fehler. CWnd* CWnd::GetDlgItem(int nID) const { [COLOR="red"]ASSERT(::IsWindow(m_hWnd));[/COLOR] if (m_pCtrlCont == NULL) return CWnd::FromHandle(::GetDlgItem(m_hWnd, nID)); else return m_pCtrlCont->GetDlgItem(nID); } in m_hWnd steht "unused = ???" Das scheint jetzt glaube ich das Problem zu sein, weil ich die Funktion aufrufe bevor ich: if(c_ProfilmangerNewProfilWindow.DoModal() == IDOK) {... } aufrufe. er hat iwie kein Fenster oder so hat keine ahnung... Nur ich wüsste auch nicht was ich machen sollte um es dazwischen zupacken. Ich weiß einfach nicht genau was .DoModal() macht nur das es iwie das Fenster aufruft... Aber ich weiß auch nicht genau wann in die if-bedingung gesprungen wird. Ich hoffe ihr könnt mir ihrgendwie helfen, ich bin so sehr am verzweifeln und ausrasten...
  10. Ich habs jetzt so zur hälfte mit der Schrift hinbekommen, aber eine sache klappt immer noch nicht, ich will die Schriftgröße eines einzelnen StaticText ändern, kann mir mal jemand bitte helfen?? €dit: void CVokabeltrainer20enhancedView::OnPaint() { //CPaintDC dc(this); // device context for painting // TODO: Fügen Sie hier Ihren Meldungsbehandlungscode ein. // CFormView::OnPaint() soll zum Zeichnen von Meldungen nicht aufgerufen werden. //CFont schrift; //CString ABCDE ="Arial"; CPaintDC dc(this); schrift.CreateFont(29, 0, 0, 0, FW_BOLD, 0, 0, 0, DEFAULT_CHARSET, OUT_CHARACTER_PRECIS, CLIP_CHARACTER_PRECIS, DEFAULT_QUALITY, DEFAULT_PITCH | FF_DONTCARE, _T("Consolas")); CStatic *ed=(CStatic*)GetDlgItem(IDC_STATIC222); ed->SetFont(&schrift); GetDlgItem(IDC_STATIC222)->SetWindowText(_T("Ghostmode")); } So habe ich es jetzt und Schrift ist ne public in der View Class! Aber ich bekomme nach dem Start eine fehler Meldung "Debug Assertion Failed..." aber ich sehe dass die Schrift richtig übernommen wurde und es anscheinend eingeschränkt funktioniert.. ich verstehe nur nicht was mir die Fehler Meldung sagen soll bzw. wodurch sie ausgelöst wird..
  11. Also das ganze steht bei mir in der View cpp, ich habe nämlich eine SDI mit FormView. void CVokabeltrainer20enhancedView::OnMouseMove(UINT nFlags, CPoint point) { // TODO: Fügen Sie hier Ihren Meldungsbehandlungscode ein, und/oder benutzen Sie den Standard. POINT coord; GetCursorPos(&coord); CRect rect; CWnd *pWnd = AfxGetApp()->GetMainWnd()->GetDlgItem(IDBC_VOCTRAIN); pWnd->GetWindowRect(&rect); //pWnd->GetClientRect(&rect); ScreenToClient(&rect); //optional step - see below //position: rect.left, rect.top //size: rect.Width(), rect.Height() if(coord.x >= rect.left && coord.x <= rect.left+rect.Width()) { exit(1); } CFormView::OnMouseMove(nFlags, point); } So sieht das Ganze in rohform aus und ich bekomme dann sofort nachm start ne Fehlermeldung bei: _AFXWIN_INLINE void CWnd::GetWindowRect(LPRECT lpRect) const [COLOR="red"]{ ASSERT(::IsWindow(m_hWnd)); ::GetWindowRect(m_hWnd, lpRect); }[/COLOR]
  12. Hey, Ich brauche die Größe sowie die Position von Steuerelementen. Ich habe folgendes ausprobiert: CRect rect; CWnd *pWnd = AfxGetApp()->GetMainWnd()->GetDlgItem(IDBC_VOCTRAIN); pWnd->GetWindowRect(&rect); ScreenToClient(&rect); Doch bei "ScreenToClient" gibts eine Zugriffsverletzung und zwar an dieser Stelle: _AFXWIN_INLINE void CWnd::GetWindowRect(LPRECT lpRect) const [COLOR="red"]{ ASSERT(::IsWindow(m_hWnd)); ::GetWindowRect(m_hWnd, lpRect); }[/COLOR] Ich verstehe nicht wieso, wäre schön wenn ihr mir weiterhelfen könntet! EDIT: Wieso bekomme ich auf fast alles eine Zugriffsverletzung wenn ich AfxGetApp()->GetMainWnd()->GetDlgItem(IDBC_VOCTRAIN)-> und hier dann versuche iwie an das rect ranzukommen? getDC geht nicht usw... MfG Artery
  13. Okay das mit der anordnung hat geklappt! Vielen Dank... Wie kriege ich denn die Größe des Dialogs in Pixeln hin? Und noch eine Frage, wie kann ich Statictext so modifizieren dass man nur die Schrift sieht? Kann man auch Schriftarten importieren? Ich würde gerne eine Schriftart benutzen die ich in Photoshop habe.. MfG Artery
  14. Hallo leute, Ich muss für die Schule ein MFC-Projekt machen. (Vorne weg ich bin von MFC kein Stück überzeugt, ganz ehrlich es ist ******e ) Naja jedenfalls, ich scheitere schon allein am Layout meiner Anwendung! Also ich habe das ganze Dialogfeldbasierend gemacht. Ich möchte jetzt mehrere Bitmaps und ein paar Buttons auf dem Fenster anordnen. Nur ich kriege es einfach nicht gebacken, dass sie richtig angeordnet sind. Also z.b. eine Bitmap im Hintergrund, darüber paar Buttons, aber er ordnet alles immer unterschiedlich an (z.b. das eine über dem anderen, wenn ich die transperenz verändere, wieder ganz anders usw.), wenn ich 3 Bitmaps habe sehe ich die dritte (als letztes hinzugefügte) überhaupt nicht! Kann man nicht einfach sagen dieses Objekt soll ganz in den Hintergrund, das dadrüber und das 3te ganz in den Vordergrund? Auch wenn ich das Fenster start, soll er 2 Bitmaps auf 2 Buttons laden, macht es bei einem. Den anderen sehe ich nur wenn ich mit der Maus drüber gehe... Darüber hinaus wenn ich die Größe des Fensters einstellen will, habe ich nur die Möglichkeit gefunden es mit der Maus verschiedenen groß zu ziehen. Habe es so eingestellt das unten 642x482 steht, wenn ich hab eine Bitmap mit z.b. der Breite 642 drauf packe ist sie viel zu klein erst bei 942 passt sie richtig drauf wieso das?? Also ganz ehrlich da war VB tausendmal besser... Ich hoffe ihr könnt mir helfen, weil ich richtig am verzweifeln bin was die Gestaltung angeht... MfG Artery
  15. Hallo, ich hab ein paar Fragen zu Funktionen! 1. Wie kann ich eine Funktion erstellen, sodass sie beliebig viele Variabeln eines Datentypes aufnehmen könnte? So ungefähr wie bei printf oder sprintf, da kann man ja dann noch "beliebig viele" Variablen einbinden 2. Wie kann ich realisieren, das ich einen void Datentyp benutze? So ungefähr wie bei fwrite, wird auch void* verlangt, also das ich jetzt int* oder char* und beides in die gleiche Variable kommt? 3. Wie kann ich einen Zeiger auf eine Funktion erstellen und übergeben? Ich hoffe das geht und ihr wisst wie man es nicht allzukomplex lösen kann! MfG Artery
  16. achso k, also wenn ich jetzt das ganze über new[] gemacht habe reicht das mit delete[] ja aus! Nur nochmal ne Frage muss ich dann einfach nur folgendes machen: delete[] NewSprachenArrayTmp; NewSprachenArrayTmp = NULL; wenn ich folgend das angelegt habe? NewSprachenArrayTmp = new char*[SprachenAnzahl]; NewSprachenArrayTmp[i] = new char [20];
  17. Mmm... Wo ist jetzt der unterschied zwischen Delte[] tmp und free(tmp) ?
  18. Ernsthaft? Was soll ich mit der Website? Ich will 1. keine Informationen über die Geschichte von C und was das ist, 2. Steht da nicht wie ich nun 2D Arrays richtig "lösche", ich weiß wie man wieder speicher frei gibt, wollte aber einfach wissen, ob das bei 2D arrays genau so ist oder ob das etwas anders geht... Und da brauche ich so ne website nicht!
  19. Ne also ich mache das so das ich mir ein neues Arrayschaffe mit der passenden Größe, die Daten darein schreibe. Dann lösche und erstelle mein eigentliches Array neu mit der passenden Größe, schiebe die Daten da wieder rein. Und lösche das andere Array wieder jetzt war halt nur meine Frage, wie ich 2D Arrays wieder richtig "lösche"!
  20. Mmmm... ne das ist mir etwas zu umständlich , da erstelle ich lieber ein neues Array ;D Nur wenn ich jetzt ein Array löschen will geht das ja folgender Maßen: delete[] MeinArray; MeinArray = NULL; wenn ich jetzt nen 2D Array habe, wie mache ich das dann? So? delete[] MeinArray[0]; delete[] MeinArray; MeinArray = NULL;
  21. Das mit dem 15 min edit nervt mich :/ Wie kann ich denn jetzt nen 2D char array dynamisch erweitern? Also das ich einfach 1 element noch hinzufüge ohne den Inhalt der schon in den anderen Elementen steht zu löschen?
  22. Upps... Ich hätte vielleicht dazu schreiben sollen das ich es DYNAMISCH anlegen will ja das man so eins anlegt ist mir klar xD, aber ich wollte wissen wie man es dynamisch macht okay habs mit: char** Sprachenbla = new char*[3]; Sprachenbla[0] = new char[10]; hingekriegt dachte erst das geht nicht, weil er mir beim debuggen, wenn ich das Programm anhalte beim überwachen, nicht das komplette array anzeigt sonder nur: - Sprachenbla 0x01e747f0 char * * - 0x01e74838 "sadasdsadsad" char * 115 's' char
  23. Ich mache es jetzt so das ich die csv datei so anlege das in jeder Zeile nicht wie vorher in jeder Spalte, die Vokabeln der einzelnen Sprachen stehen! Nur eine Frage kann mir jemand bitte zeigen, wie ich ein 2D Char Array anlege?
  24. Hey leute, Ich hab ein kleines Problem beim Lesen aus CSV-Dateien... Also ich habe in die CSV Datei in der ersten Zeile sozusagen eine Sprache gespeichert und dadrunter sollen dann Vokabeln der Sprache stehen. Z.b.: Deutsch | Englisch | Französisch Arbeit | labour | travail ... | .... | ... usw. Jetzt hab ich schon die Spalte rausgefunden, als Zahl also, 2, wenn ich jetzt Englisch haben will. Jetzt will ich alle Vokabeln die unter Englisch stehn aus der Datei lesen und in ein in ein 2D Char Array schreiben nur das krieg ich nicht ganz hin das ich auf die nächste Zeile der Spalte zugreife fprintf(VBListe,"\n%s ; \n%s ; \n%s ; \n%s ; \n%s",ListenInhalt[0],ListenInhalt[1],ListenInhalt[2],ListenInhalt[3],ListenInhalt[4]); Damit kann ich in die erste Spalte unter einander in die Datei schreiben, aber fscanf(VBListe,"\n%s ; \n%s ; \n%s",&ListenInhalt[0],&ListenInhalt[1],&ListenInhalt[2]); Klappt nicht, er liest dann einfach den Inhalt der ersten Zeile Wie krieg ich das jetzt hin? Ich mache das ganze Dateihandling in C! und ja ich WILL char Arrays benutzen... MfG Artery
  25. Mmmm... k, dann mach ich das mit dem zerlegen! Danke! MfG Artery

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...