EditBox in ToolBar auf Knopfdruck füllen !

beauregard

Grünschnabel
Hi Leute ,

ich hab hier ein Projekt, das eine EditBox in der ToolBar haben soll, das implementieren und anzeigen anzeigen funktioniert.
Wenn ich versuche die TextBox auf Knopfdruck zu füllen klappt's nicht, es ist zum irre werden !
Ich möchte per Druck auf diesen Knopf (das Ereignis(Knopfdruck) wird im Doc gehandelt) die Edit Box dynamisch füllen (mit Werten die im Doc berechnet werden), aber das klappt einfach nicht ;( !
Ich hab jetzt emal ein kleines Projekt mit der selben Problematik angehängt um übertschaubaren Code schicken zu können.

Vielen Dank für eure Mühe vorab
Beauregard
 

Anhänge

Zuletzt bearbeitet:
Was genau klappt denn nicht? m_Ctrl_EDIT.SetWindowText dürfte doch die Lösung sein, oder?

Ich seh mir dein Projekt noch genauer an und editiere meinen Beitrag später!

EDIT: Du erstellst in der Funktion "OnFill" eine neue, frische Instanz der ToolBar. Dadurch greifst du nicht auf die bereits erstellte Toolbar zu.
 
Zuletzt bearbeitet:
Hi danke für Deine Antwort,

aber ich glaub ich bin grad in einer Sackgasse, es klappt einfach nicht.
Kennst Du Tuts die das Problem (Edit in ToolBar + Button zum füllen) behandeln ?
Oder gibts gar Snippets oder Sources in dieser Richtung ?

Ich weis es is vllt. nicht üblich aber wenn Du weißt wie das geht könntest Du das kleine Projekt dahingehend korrigieren und posten ? Ich mach damit schon seit fast 3 Tagen rum und kriegs nicht gebacken
Wäre wahnsinnig nett von Dir und Du wärst meiner ewigen Dankbarkeit sicher !! ;)))



Danke für Deine Mühe
;)
Beauregard
 
Hallo!

Tut mir leid, dass ich mich erst jetzt wieder melde, konnte aber das WE lang nicht einmal an den Rechner.

Ich habe eine Lösung dafür, ja .. weiß nicht, ob es die Schönste ist, aber sie funktioniert.

Die richtige Variable für den Umgang mit der ToolBar ist m_wndToolBar in deiner CMainFrm Klasse (MainFrm.cpp / h).

Ich habe das Projekt so erweitert:

MainFrm.cpp

Code:
void CMainFrame::FillEditCtrl(CString strText)
{
	if(m_wndToolBar)
	{
		m_wndToolBar.m_TestString = strText;
		m_wndToolBar.OnUpdateEdit();
	}
}

MainFrm.h

Code:
void FillEditCtrl(CString strText);

EditCtrlDoc.cpp

Code:
#include "mainfrm.h" 

void CEditCtrlDoc::OnFill() 
{
	 CMainFrame *pMainFrm = NULL;

	 pMainFrm = (CMainFrame*)AfxGetApp()->m_pMainWnd;

	 if(pMainFrm)
	 {
		 pMainFrm->FillEditCtrl(_T("nnnnnnn"));
	 }
}

TlBar.cpp
Code:
void CTlBar::OnUpdateEdit ()
{
	AfxMessageBox ("Funktion OnUpdateEdit ",MB_OK);

	if(m_Ctrl_EDIT)
		m_Ctrl_EDIT.SetWindowText(m_TestString);

}
 
Zurück