Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » Titelzeile des Fensters

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 < [ 2 ]
000
09.05.2003, 08:33 Uhr
Dirk22



Momentan steht in meinem SDI-Programm in der Titelzeile des Fensters Unbenannt - Programmname

Dies stört mich aber, da ich nicht mit Dateien arbeite und dann folglich immer Unbenannt dort stehen würde. Ich will einfach nur meinen Programmnamen dort stehen haben und sonst gar nichts.

Leider weiss ich nicht, wie ich auf den Inhalt der Titelzeile zugreifen kann.

Ich hoffe, dass ihr mir sagen könnt, wie das geht.

Vielen Dank schonmal im Voraus

Dirk
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
09.05.2003, 11:07 Uhr
~Heiko
Gast


Hi Dirk,
habe noch nie ein SDI-Programm geschrieben.
Ich vermute aber mahl das das so geht.


C++:
this->SetWindowText("blablabla");

 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
09.05.2003, 11:08 Uhr
~Heiko
Gast


auweia mal mit h soweit ist es schon mit meiner Rechtschreibung gekommen
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
09.05.2003, 11:42 Uhr
Volle



Hi,

und falls nicht, dann hilft dir CDocument::SetTitle.

Grüße, Volle.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
09.05.2003, 12:58 Uhr
Dirk22



Erstmal vielen Dank für eure Antworten.
Bei SetWindowText, wie auch bei SetTitle passiert gar nichts, wenn ich es in OnInitialUpdate reinschreibe. Es muss wohl eine andere Funktion sein. Ich habe eine MFC-Anwendung, die von CFormView abgeleitet ist.
In welche Funktion muss ich den folgenden Code reinschreiben?


C++:

CDocument Titel;
Titel.SetTitle("Hallo");





Dirk
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
09.05.2003, 13:03 Uhr
Dirk22



Sorry,
habe die Funktion jetzt mit dem Klassenassistenten angelegt. Und dort

C++:
lpszTitle = "Hallo";

hineingeschrieben. Aber es kommt dann nicht das gewünschte Ergebnis raus, sondern:

Hallo - Programmname

Und mein Ziel ist ja:

Programmname

mfg Dirk
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
09.05.2003, 13:19 Uhr
~mike
Gast


Hi!
Steht das nicht irgendwo in der Ressourcedatei?
Muss mal nachschaun...*grübbel*

mfg mike
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
09.05.2003, 14:01 Uhr
Volle



Hi Dirk,

du musst SetTitle schon von deiner Dokumentenklasse her aufrufen.

Grüße, Volle.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
10.05.2003, 15:30 Uhr
Dirk22



Ich habe jetzt auch noch eine Lösung zu diesem Problem gefunden.
Die Titelzeile initialisieren kann man in der Funktion InitInstance in der Datei Programmname.cpp.
Dort schreibt man noch herein:

C++:
m_pMainWnd->SetWindowText("gewünschter Text");


Möchte man den Namen der Titelzeile während der Laufzeit ändern, dann verwendet man folgenden Code:


C++:
AfxGetApp()->m_pMainWnd->SetWindowText("gewünschter Text");


mfg Dirk
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
10.05.2003, 15:50 Uhr
Spacelord
Hoffnungsloser Fall


Du musst in der PreCreateWindow funktion deines Main Frame den Stil
FWS_ADDTOTITLE entfernen.

C++:
    cs.style &= ~FWS_ADDTOTITLE ;


MfG Spacelord
--
.....Ich mach jetzt nämlich mein Jodeldiplom.Dann hab ich endlich was Eigenes.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ]     [ VC++ / MFC ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: