Afficher une chaine de caractere sur le bureu windows

cs_sahal Messages postés 2 Date d'inscription dimanche 18 avril 2004 Statut Membre Dernière intervention 18 avril 2004 - 18 avril 2004 à 19:58
gregroar Messages postés 42 Date d'inscription samedi 13 juin 2009 Statut Membre Dernière intervention 19 novembre 2010 - 30 nov. 2009 à 17:39
J'aimerai savoir comment on affiche sune simple chaine de caracteres sur le bureau de windows.
voici mon cod emais ca marche pas : (je tatonne en prog win)
HWND bureau = FindWindow("Progman", "Program Manager");
//::LPPAINTSTRUCT t;
//ShowWindow(bureau, true);
HDC hdc=GetDC(bureau);
HDC dc= CreateCompatibleDC(hdc);
TextOut(dc, 50,10,"Bonjour ",34);
et ca n affiche rien...

8 réponses

BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
18 avril 2004 à 20:28
hdc = CreateDC("DISPLAY", NULL, NULL, NULL);
Avec cela, tu plaques direct sur l'ecran mais ce n'est pas indique du tout, a part pour une blague.

ciao...
BruNews, Admin CS, MVP Visual C++
0
cs_sahal Messages postés 2 Date d'inscription dimanche 18 avril 2004 Statut Membre Dernière intervention 18 avril 2004
18 avril 2004 à 20:44
merci mais ca m aide pas beaucoup...
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
18 avril 2004 à 20:52
Bon voila un exemple complet.
Compile (release) et teste.

int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE x, PSTR y, int z)
{
HDC hdc, hMem;
RECT rect;
HBRUSH hbr;
HBITMAP hbmp;
BITMAP bitmap;
char szOut[60];
SIZE size; int cxFull GetSystemMetrics(SM_CXSCREEN), cyFull GetSystemMetrics(SM_CYSCREEN); rect.left rect.top 0; rect.bottom = cyFull; rect.right = cxFull / 3;
hdc = CreateDC("DISPLAY", NULL, NULL, NULL);
hbr = CreateSolidBrush(RGB(0, 0, 255));
SetBkMode(hdc, TRANSPARENT);
FillRect(hdc, &rect, hbr); DeleteObject(hbr);
rect.left = rect.right; rect.right *= 2;
hbr = CreateSolidBrush(RGB(255, 255, 255));
FillRect(hdc, &rect, hbr); DeleteObject(hbr); rect.left rect.right; rect.right cxFull; rect.top = 0; rect.bottom = cyFull;
hbr = CreateSolidBrush(RGB(255, 0, 0));
FillRect(hdc, &rect, hbr); DeleteObject(hbr); rect.left 0; rect.right cxFull;
strcpy(szOut, "De toutes les libertés humaines,");
GetTextExtentPoint32(hdc, szOut, strlen(szOut), &size); rect.top (cyFull / 2) - 100; rect.bottom rect.top + size.cy * 1.5;
DrawText(hdc, szOut, -1, &rect, DT_SINGLELINE | DT_CENTER | DT_VCENTER);
strcpy(szOut, "la plus précieuse est l'indépendance de la patrie");
rect.top = rect.bottom; rect.bottom += (size.cy * 1.5);
DrawText(hdc, szOut, -1, &rect, DT_SINGLELINE | DT_CENTER | DT_VCENTER);
strcpy(szOut, "Charles Maurras");
rect.top = rect.bottom; rect.bottom += (size.cy * 4);
DrawText(hdc, szOut, -1, &rect, DT_SINGLELINE | DT_CENTER | DT_VCENTER);

hbmp = LoadBitmap(hInstance, MAKEINTRESOURCE(IDB_LYS));
GetObject(hbmp, sizeof(BITMAP), &bitmap);
hMem = CreateCompatibleDC(hdc);
SelectObject(hMem, hbmp);
BitBlt(hdc, cxFull / 2 - bitmap.bmWidth / 2, 20, bitmap.bmWidth, bitmap.bmHeight, hMem, 0, 0, SRCCOPY);
DeleteDC(hMem); DeleteObject(hbmp);
DeleteDC(hdc);
return 0;
}

ciao...
BruNews, Admin CS, MVP Visual C++
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
18 avril 2004 à 20:55
Je realise qu'il va t'en manquer un morceau.
Si tu veux, poste un message prive avec mail ou t'envoyer l'ensemble.

ciao...
BruNews, Admin CS, MVP Visual C++
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
18 avril 2004 à 21:15
à la place de CreateDC("DISPLAY", NULL, NULL, NULL)
pourrait-on utiliser GetDC(0) ?
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
18 avril 2004 à 21:25
Normalement oui mais je n'ai jamais fait de cette maniere.
Donc a tester.

ciao...
BruNews, Admin CS, MVP Visual C++
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
18 avril 2004 à 23:00
C'est parti.

ciao...
BruNews, Admin CS, MVP Visual C++
0
gregroar Messages postés 42 Date d'inscription samedi 13 juin 2009 Statut Membre Dernière intervention 19 novembre 2010 1
30 nov. 2009 à 17:39
eh ca serait y possible d avoir la source complete nous aussi?
ca m interesse bien d apprendre a maitriser l ecriture sur ecran.
peut on definir des calques, comme dans gimp?
faire une fenetre transparente, dans laquelle on affiche des calques sur le bureau,
des icones sur differents plans, des menus, tout cela pourait se faire par le dessin ?

un bon tuto serait juste un rectangle blanc avec un texte noir dedans, que l on pourait cliquer ou deplacer.

Si un tuteur pouvait faire pousser cette idée...
0
Rejoignez-nous