Farbe vom Text Feld Ändern während des laufzeites ??
-
mach mal bei DeleteObject klammern hin

Habs in meinem Code oben verbessert. Sorry.
-
Ja jetz tut sich was das Bild Flimmert kurz wenn ich die Taste drücke.
Aber die Farbe ändert sich nicht!ich habe m_Brush1 als public:
Leigt es da ran und warum Flimmer das ganze bild ?
-
dann schick das invalidate nur an das editcontrol:
GetDlgItem(IDC_BOOK1)->Invalidate();Und die Farbe bleibt gleich, weil du beide Male die selbe verwendest

-
Ahhhhh Mein Lieber dEUs hast mich fast wieder von meinem qualen erlöst nur noch ein Bitte erst mal dankeee
.Wie muss ich mit beiden hier machen wenn ich sie auch Ändern möchte über die KeyboardTastatur.
pDC->SetTextColor(RGB(0,0,0));//Text Farbe ändern
pDC->SetBkColor(RGB(255,204,153));
-
Da wäre es das einfachste, wenn du zwei Membervariablen vom Typ COLORREF machst. Und die dann an den selben Stellen wie den Brush setzt. Und dann in OnCtlColor statt fest reinkodierten Werten einfach diese Variablen verwenden.
-
Hab das jetz so gemacht.
///// .h
class CMaxMidiProtoDlg : public CDialog
{
// Konstruktion
public:
COLORREF m_clorreftxt;
COLORREF m_clorreftxtHg;
//////////////////////////////////////////////////////OnCtlColor
if(pWnd->GetDlgCtrlID() == IDC_BOOK1)
{//pDC->SetTextColor(RGB(0,0,0));//Text Farbe ändern
//pDC->SetBkColor(RGB(255,204,153));pDC->m_clorreftxt->SetTextColor(RGB(0,0,0));
pDC->m_clorreftxtHg->SetBkColor(RGB(255,204,153));
//////////////////////////////////////////////////////////return m_Brush1;
/////////////// .cpp
CMaxMidiProtoDlg:: TataturAnAus(LPMIDIEVENT pMsg)
{
if(pMsg->data2 !=0 )
{m_Brush1.DeleteObject();
m_Brush1.CreateSolidBrush(RGB(255,204,153));m_clorreftxt;
m_clorreftxtHg;
}Bekomme 4 Fehler meldung

-
Hab das jetz so gemacht.
///// .h
class CMaxMidiProtoDlg : public CDialog
{
// Konstruktion
public:
COLORREF m_clorreftxt;
COLORREF m_clorreftxtHg;
//////////////////////////////////////////////////////OnCtlColor
if(pWnd->GetDlgCtrlID() == IDC_BOOK1)
{//pDC->SetTextColor(RGB(0,0,0));//Text Farbe ändern
//pDC->SetBkColor(RGB(255,204,153));pDC->m_clorreftxt->SetTextColor(RGB(0,0,0));
pDC->m_clorreftxtHg->SetBkColor(RGB(255,204,153));
//////////////////////////////////////////////////////////return m_Brush1;
/////////////// .cpp
CMaxMidiProtoDlg:: TataturAnAus(LPMIDIEVENT pMsg)
{
if(pMsg->data2 !=0 )
{m_Brush1.DeleteObject();
m_Brush1.CreateSolidBrush(RGB(255,204,153));m_clorreftxt;
m_clorreftxtHg;
}Bekomme 4 Fehler meldung

-
Hab das jetz so gemacht.
///// .h
class CMaxMidiProtoDlg : public CDialog
{
// Konstruktion
public:
COLORREF m_clorreftxt;
COLORREF m_clorreftxtHg;
//////////////////////////////////////////////////////OnCtlColor
if(pWnd->GetDlgCtrlID() == IDC_BOOK1)
{//pDC->SetTextColor(RGB(0,0,0));//Text Farbe ändern
//pDC->SetBkColor(RGB(255,204,153));pDC->m_clorreftxt->SetTextColor(RGB(0,0,0));
pDC->m_clorreftxtHg->SetBkColor(RGB(255,204,153));
//////////////////////////////////////////////////////////return m_Brush1;
/////////////// .cpp
CMaxMidiProtoDlg:: TataturAnAus(LPMIDIEVENT pMsg)
{
if(pMsg->data2 !=0 )
{m_Brush1.DeleteObject();
m_Brush1.CreateSolidBrush(RGB(255,204,153));m_clorreftxt;
m_clorreftxtHg;
}Bekomme 4 Fehler meldung

-
was ist den jetz passiert sorry !!!
-
Dankeeeee..
Hab jetz mit ne driten variable hin bekommen .Grüße Can