Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (WinAPI, Konsole) » paint mit win32 dll

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 <
000
30.12.2004, 10:13 Uhr
~bloodhawk
Gast


guten morgen!
geht mal wieder um mein game
wenn ich eine dll lade sollte ein text oder ein strich, was auch immer in dem bildschirm erscheinen! dies sollte aber nur für das game window sein [HWND d2 = FindWindow("Diablo II",0);]
nicht dass die striche bzw texte später auf meinem desktop erscheinen
in der msdn hab ich bis jetzt nur was mit case funktionen und windowmessages gefunden, wenn man selber ein window erstellt
hoffe ihr könnt mir helfen! vielen dank
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
30.12.2004, 11:06 Uhr
Oliver
S2-Pixelgeneral


Den DC eines Windows kannst du mit GetDC(deinHWND) bekommen und da drauf kannst du dann (normalerweise) zeichnen.
--
Demokratie ist die Diktatur der Mehrheit.

www.siedler25.org/ ( Siedler2 - Remake )
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
30.12.2004, 12:36 Uhr
~nighthawk
Gast


vergeblich^^:

C++:
#include <conio.h>
#include <windows.h>

int main()
{
HWND hWwnd = FindWindow(0,"paint - Microsoft Visual C++");
ShowWindow(hWwnd,SW_SHOWNORMAL);
GetDC(hWwnd);
{
HDC dc;
PAINTSTRUCT ps;
dc=BeginPaint(hWwnd,&ps);

MoveToEx(dc,0,0,NULL);
LineTo(dc,789,550);
MoveToEx(dc,300,0,NULL);
LineTo(dc,50,300);

TextOut(dc,100,30,"aha",25);

ValidateRect(hWwnd,NULL);
EndPaint(hWwnd,&ps);
}
getch(); return 0;}

irgendwie hat da was nicht geklappt
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
30.12.2004, 14:08 Uhr
Oliver
S2-Pixelgeneral


Du brauchst kein BeginPaint machen, einfach dann gleich zeichnen:


C++:
HDC dc;
dc=GetDC(hwnd)
// zeichnen
ReleaseDC(hwnd,dc);


--
Demokratie ist die Diktatur der Mehrheit.

www.siedler25.org/ ( Siedler2 - Remake )
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
30.12.2004, 14:43 Uhr
~hawk
Gast


klappt schon eher! aba das paint überdeckt mein bildschirm!
nochn paar kleine fragen:
1.mit release kann ichs hinmachen, wie bekomm ichs wieder weg?
2.wie kann ich die schrift transparent machen? dass der bildschirm nicht überdeckt wird?(auch allgemein benötigt)
3.schriftgröße und schriftart sollte man so ändern können:

C++:
HFONT hFont = CreateFont(...);
HFONT hOldFont = SelectObject(...);
TextOut(...);
DeleteObject(SelectObject(...));


nur kann ich mir mit meiner größten vorstellungskraft darunter nix vorstellen wenn creatfont mit 100 ints und dwords parametern definiert is

ich guck ma in der msdn
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
30.12.2004, 15:21 Uhr
Oliver
S2-Pixelgeneral


1. Indem du das Programm "zwingst" es neu zu zeichnen so z.B.


C++:
InvalidateRect(hWnd,NULL,1);



2.

C++:
SetBkMode(hDC,TRANSPARENT);



3. Die Parameter sind eigentlich alle in der msdn erklärt, ist halt bloß ein bisschen Arbeit, aber das Meiste kannst du auf 0 setzen.
--
Demokratie ist die Diktatur der Mehrheit.

www.siedler25.org/ ( Siedler2 - Remake )
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
30.12.2004, 18:17 Uhr
~bloodhawk
Gast


hmm.. lauft gut, bis auf das, dass ich mit invalidaterect den text irgendwie nur n paar millisecunden anzeige und mit dem timer konnt ich das problem nicht lösen!
hättest du ne idee?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (WinAPI, Konsole) ]  


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: