Text auf Desktop bringen und wieder löschen
-
Hallo Forum,
Ich will ein erinnerungsprogramm basteln, und nich die Messagebox oder so Sprechblasen nehmen, sondern direkt auf den Desktop schreiben und wieder löschen, nach ner Zeit. Ansatz ist, das ganze mit TextOut über den Desktop-DC zu regeln,
void Ausgabe(char* str) { DeskHdc = GetDC(NULL); TextOut(DeskHdc, 200, 200, "hehe", 4);//str, strlen(str)); ReleaseDC(NULL, DeskHdc); } void Loeschen(char*str) { DeskHdc = GetDC(NULL); ClearPen = CreatePen(PS_SOLID, 1, RGB(0,0,0)); SelectObject(DeskHdc, ClearPen); //TextOut(DeskHdc, 200, 200, "hehe", 4);//str, strlen(str)); MoveToEx(DeskHdc, 200, 200, 0); LineTo(DeskHdc, 300, 250); ReleaseDC(NULL, DeskHdc); }So siehts aus, die Idee zu Loeschen hab ich irgendwo aufgeschnappt, wo es darum ging, eine Linie mit der "Löschfarbe" psClear zu zeichnen. Das war n Delphi-Forum, ...
... es gibt wohl kein psClear in C++.Pen.Style := psClear;Zwar sind Borland C++ und Delphi mit diesen ganzen funktionen fast das Gleiche, aber naja haut halt nich hin... Wie würdet ihr das lösen??
MFG throni3 //hab BC++Builder 1
-
eine Lösung wie du den Text löschen kannst hab ich dir nicht. Aber findest du
es wirklich sinnvoll auf den Desktop zu schreiben? Ich hab eigentlich immer
irgend ein Fenster offen und würde den Text 100% nicht zu sehen bekommen.
-
Hallo
keine Ahnung ob das so funktioniert
aber speicher dir doch den Teil den du ueberschreibst und kopier ihn wieder zurueck
Problem was ist wenn sich dein Desktop aendert ueberdeckt ist ????
(ist aber schon nicht ganz ungefaehrlich was du da vorhast)MfG
Klaus
-
Danke für die Antworten,
Also Fenster will ich nich deswegen aufmachen, weil man das ja wieder wegklicken muss... aber die Methode mit dem GetDC(NULL) ist ja extra dafür da, um direkt auf den Bildschirm tzu malen, ich glaube man kann sogar auf dem windows-Startbutton rumkrixeln

Das alte bild zu speichern, wäre auch ne möglichkeit, aber wie komm ich jetzt an die daten ran??
Ich dacht da gibts ne patentlösung??
throni3