Accueil > Forum > > > > Tracer des rectangles
Tracer des rectangles
vendredi 19 mars 2010 à 11:59:28 |
Tracer des rectangles

nassib0001
|
BJr
je suis debutant en C++
je veux realiser un programmme qui permet d afficher une fentre simple
et de tracer quelque rectangle dedans
Abientot
|
|
dimanche 21 mars 2010 à 17:18:27 |
Re : Visual studio c++ 6.0

rt15
|
Bonjour,
Merci de ne pas employer "je veux", de faire des phrases correctes (Pas de style SMS, utiliser de la ponctuation et des majuscules...), de ne pas double poster, et de donner des titres précisant le problème...
Code C/C++ : #ifdef UNICODE
#define _T(x) L ## x
typedef unsigned short TCHAR;
#else
#define _T(x) x
typedef char TCHAR;
#endif
#include <windows.h>
HINSTANCE _hThisInstance; /* Handle du module */
HWND _hWnd; /* Handle de la fenêtre */
LPTSTR _lpAppName = _T("Dessin"); /* Nom de l'appli */
HBRUSH _hMainBrush = NULL; /* Brush de la couleur de la fenêtre */
RECT _rect = { 10, 10, 200, 100 };
WORD __stdcall Err_ShowLast(TCHAR* lpTitle)
{
DWORD nLastError;
LPTSTR lpMessageBuffer;
nLastError = GetLastError();
FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM,
NULL, nLastError, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
(TCHAR*)(void*)&lpMessageBuffer, 0, NULL);
MessageBox(NULL, lpMessageBuffer, lpTitle, MB_OK | MB_ICONERROR);
LocalFree(lpMessageBuffer);
return 1;
}
LRESULT CALLBACK WindowProcedure(HWND hWnd, UINT nMessage, WPARAM wParam, LPARAM lParam)
{
PAINTSTRUCT ps; /* Info de dessin */
HDC hDc; /* DC de dessin */
int bHandled; /* Pour savoir si le message est traité */
long nResult;
nResult = 0;
bHandled = 0;
switch (nMessage)
{
case WM_PAINT:
hDc = BeginPaint(hWnd, &ps);
FillRect(hDc, &_rect, _hMainBrush);
EndPaint(hWnd, &ps);
bHandled = 1;
break;
case WM_DESTROY:
/* On signale que le thread va s'arrêter */
PostQuitMessage(0);
bHandled = 1;
break;
}
if (! bHandled)
nResult = DefWindowProc(hWnd, nMessage, wParam, lParam);
return nResult;
}
BOOL __stdcall CreateMyWindow()
{
WNDCLASSEX wincl; /* Classe de la fenêtre utilisée */
int nResult;
nResult = 0;
/* Création de la classe de fenêtre */
wincl.cbSize = sizeof(WNDCLASSEX);
wincl.style = 0;
wincl.lpfnWndProc = WindowProcedure;
wincl.cbClsExtra = 0;
wincl.cbWndExtra = 0;
wincl.hInstance = _hThisInstance;
wincl.hIcon = LoadIcon(NULL, IDI_APPLICATION);
wincl.hCursor = LoadCursor(NULL, IDC_ARROW);
wincl.hbrBackground = (HBRUSH)(COLOR_BTNFACE + 1);
wincl.lpszMenuName = 0;
wincl.lpszClassName = _lpAppName;
wincl.hIconSm = NULL;
/* Enregistrement de la classe */
if (! RegisterClassEx(&wincl)) goto the_end;
/* Création de la fenêtre */
_hWnd = CreateWindowEx(0, _lpAppName, _lpAppName,
WS_OVERLAPPED | WS_SYSMENU,
CW_USEDEFAULT, CW_USEDEFAULT, 500, 200,
HWND_DESKTOP, NULL, _hThisInstance, NULL);
if (! _hWnd) goto the_end;
/* Affichage de la fenêtre */
ShowWindow (_hWnd, SW_SHOW);
nResult = 1;
the_end:
return nResult;
}
/**
* Main
*/
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
MSG message; /* Messages envoyés à l'application */
int nResult;
/* Récupération du handle du module */
_hThisInstance = hInstance;
_hMainBrush = CreateSolidBrush(RGB(255, 0, 0));
if (! CreateMyWindow())
{
nResult = Err_ShowLast(_T("Cannot create main window"));
goto the_end;
}
/* Boucle de traitement des messages */
while (GetMessage(&message, NULL, 0, 0))
{
TranslateMessage(&message);
DispatchMessage(&message);
}
nResult = message.wParam;
the_end:
if (_hMainBrush != NULL)
DeleteObject(_hMainBrush);
return nResult;
}
|
|
dimanche 21 mars 2010 à 17:23:57 |
Re : Tracer des rectangles

nassib0001
|
Merci bien pour votre code sa marche bien et je veux savoir est ce que il est possible de dessiner plusieur rectangle ansi que des ligne
|
|
dimanche 21 mars 2010 à 19:47:05 |
Re : Tracer des rectangles

rt15
|
Qui peut tracer un rectangle peut tracer n rectangle : c'est la même fonction à simplement appeler plusieurs fois.  Pour les lignes, tu as LineTo/MoveToEx.
|
|
Cette discussion est classée dans : visual, studio
Répondre à ce message
Sujets en rapport avec ce message
Glut et Visual Studio 6 [ par Paul ]
C'est moi ou il s'aime vraiment pas ces 2 là ?Est-ce que quelqu'un a réussi à faire marcher "EXEMPLE SIMPLE OPENGL [CODE EN C]" sous VC++6 ?Je me retr
creer un fichier d'install avec instalshield visual studio [ par f1cobra ]
J'ai créé un projet vc++ avec une database en access, j'essaie de créer le fichier d'installation avec l'instalshield de visual studio. Mon problème e
API pour les IT [ par superteta2003 ]
Je voudrais trouver l'équivalent des fonction interrupt(), getvect(), setvect() de borlan turbo C. Ces fonctions sont inlus dans la librairie dos.h .
.exe crée avec Visual Studio qui marche...que sur mon PC... [ par starkrous ]
j'ai eu la surprise de me rendre compte que mon cher executable creer sous visual studio ne marchait que sur mon pc.d'apres ce qu'on m'a dit, le Pc au
mySql en C sous Visual Studio [ par bragon ]
Je veux utiliser un programme en C qui consulte une base de donnée MySql. J'utilise Visual Studio pour compiler mon programme et l'Api C livré avec My
mySql en C sous Visual Studio [ par bragon ]
Je veux utiliser un programme en C qui consulte une base de donnée MySql. J'utilise Visual Studio pour compiler mon programme et l'Api C livré avec My
Borland --> Visual Studio [ par 6Po ]
Aloha :DJ'ai fait du Cpp pendant un bon moment sur Borland et la je passe sur Visual... mais l'aide de visual studio net je la trouve pas top :DDu cou
projet à réaliser avec Visual Studio net c++ [ par Pouchnick ]
pouchnickSalut la compagnie , j ai besoin d avoir des solutions surun programme que je dois créer.je dois en effet programmer un jeu de rôle à base de
[MFC] Utilisation de la classe CTreeCtrl, couleur des lignes [ par karine3884 ]
Bonjour, Je programme sous Visual Studio C++ 6.0. J'utilise un CtreeCtrl pour créer un arbre (une arborescence). J'aimerai modifier la couleur des li
Message d'erreur à l'installation de visual studio 6 sous XP [ par JeanLucZ ]
Bonjour,quelqu'un peut-il me dire pourquoi j'ai toujours un message d'erreur lorsque j'installe visual studio 6 sous XP.C'est du genre "l'installation
Livres en rapport
|
Derniers Blogs
[HTML5] AUTOUR DU W3C : NOUVEAUX STANDARDS ET WEB MOBILE (LILLE)[HTML5] AUTOUR DU W3C : NOUVEAUX STANDARDS ET WEB MOBILE (LILLE) par Gio
Je m'y prends un peu tard je sais, mais bon je suis développeur web et donc hyper fainéant ! Toujours dans le cadre des technologies émergentes, ici HTML5, parce qu'on aime HTML5 chez Wyg , nous seront présent, le vieux ( Aurélien V.) et moi, pour pr...
Cliquez pour lire la suite de l'article par Gio [WP7] DYNAMICALLY CHANGE STARTUP PAGE[WP7] DYNAMICALLY CHANGE STARTUP PAGE par KooKiz
Let's say that you want to allow the user to customize the startup page of your application. You can easily change the startup page by editing the 'NavigationPage' attribute in the manifest file. But the manifest cannot be modified once the applicatio...
Cliquez pour lire la suite de l'article par KooKiz SESSION SILVERLIGHT 5 3D : SLIDES ET DEMOSSESSION SILVERLIGHT 5 3D : SLIDES ET DEMOS par Groc
Durant les techdays, j'ai eu le plaisir d'animer une session sur Silverlight 5 et la 3D avec Simon Ferquel. Comme promis, voici nos slides et mes démos (celles avec le viper BSG) ici et là. Pour mémoire, les démos utilisent toutes le viper BSG...
Cliquez pour lire la suite de l'article par Groc [TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES[TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES par gpommier
Suite à la session que j'ai présenté sur WebMatrix 2, vous pouvez trouver les slides ici, ainsi que les démos en packages nuget : démos1 et démos2 J'en profite pour remercier chaleureusement tous ceux qui sont venus très nombreux à cette sess...
Cliquez pour lire la suite de l'article par gpommier
Logiciels
Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Easy-Planning (1.0.0.1)EASY-PLANNING (1.0.0.1)Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ... Cliquez pour télécharger Easy-Planning
|