Înterface graphique

Alexkiki Messages postés 2 Date d'inscription mardi 13 mars 2007 Statut Membre Dernière intervention 14 mars 2007 - 13 mars 2007 à 21:16
hisoka67 Messages postés 8 Date d'inscription vendredi 19 août 2005 Statut Membre Dernière intervention 20 mars 2007 - 17 mars 2007 à 10:18
Salut à tous


Bon, j'ai un gros souci et j'ai besoin d'une grande aide.


Je suis programmeur amateur, je programme en C++ ou en Visual Basic (désolé)


J'ai besoin de créer une interface graphique qui m'affiche dans une
fenetre (ou autre) des trucs (genre plusieurs petites images sur un
fond) qui bougent en temps réel. En fait, les coordonnées des points
(là ou il y a les images) sont calculées par itérations avec la une
base temps, assez facilement, ça y'a pas de souci j'en fait mon affaire.

Donc le truc doit bouger en temps réel (avec une base temps que je puisse régler si possible) et constament.

Il n'est pas forcément nécessaire d'avoir une entrée, mais il serait
pas mal de pouvoir récupérer une info sur le clavier aussi et de
l'inclure dans les calculs de coordonnées. Mais bon ça c'est pas la
priorité.


Bon comme vous l'avez sans doute remarqué, je suis vraiment débutant et je ne sais pas trop de quoi je parle!!! lol

N'hésitez pas à me poser des questions car je suppose que vous n'avez pas tout compris.


Je ne sais pas trop sur quoi programmer aussi. Avant j'avais borland
mais je ne l'ai plus, j'aimerais savoir ou me le procurer, même pour
pas longtemps. Ah oui j'avais oublié de préciser que je suis assez
pressé (qqus jours). Mais je dis vraiment pas ça pour vous mettre la
pression ou quoi que ce soit.


Je vous remercie d'avance pour l'aide préciseuse.

...

il faut bien débuter ...

3 réponses

hisoka67 Messages postés 8 Date d'inscription vendredi 19 août 2005 Statut Membre Dernière intervention 20 mars 2007
14 mars 2007 à 12:18
Salut,

Je peux déjà te conseiller un bon IDE gratuit que j'utilise toujours :
Visual C++ 2005 express edition (téléchargeable gratuitement chez
microsoft)

Pour ce qui est de l'interface graphique, j'ai pas
trop bien compris mais si ce que tu cherches à faire c'est à dessiner
des images qui bougent dans une fenètre windows (d'après ce que j'ai compris) tu
devras être patient et essayer de trouver des tutorials sur l'API
windows (google est ton ami). Si tu pouvais en dire un peu plus sur le but de ton programme,
on pourrait surement mieux t'aider.

hisoka67
0
Alexkiki Messages postés 2 Date d'inscription mardi 13 mars 2007 Statut Membre Dernière intervention 14 mars 2007
14 mars 2007 à 19:25
Salut

je vais essayer d'être un peu plus clair:

j'ai des calculs qui se font par itérations d'un instant t à t+1
ces calculs me donnent des coordonnées de points
je voudraient pouvoir afficher ces points à l'écran à chaque instant t, et ainsi voir le trajectoire de mes points.
Pour un souci d'aspect visuel, mais en étant simple, en ces point, il y a un truc qui pourrait être une image. en tout cas je voudrait que ce soir plus joli qu'un simple point.

Voilà
0
hisoka67 Messages postés 8 Date d'inscription vendredi 19 août 2005 Statut Membre Dernière intervention 20 mars 2007
17 mars 2007 à 10:18
Salut,
Tu peux utiliser BitBlt() ou DrawState() (plus facile que bitblt) pour dessiner des bitmaps à l'écran.

Petit exemple avec DrawState() :

///// variables globales
int x=0, y=0;

LRESULT CALLBACK MainProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
switch(message)
{
case WM_CREATE:
SetTimer(hWnd, 1, 1000, 0); // va envoyer un message WM_TIMER toutes les 1000 ms (1 sec)
return 0;

case WM_TIMER:
//.... la tu met ton code qui modifie x et y

// redessine la fenètre avec les nouvelles coordonnées
Rect rcClient;
GetWindowRect(hWnd, &rcClient);
RedrawWindow(hWnd, &rcClient, 0, RDW_ERASE | RDW_INVALIDATE | RDW_ERASENOW | RDW_NOCHILDREN);
return 0;

case WM_PAINT:
PAINTSTRUCT ps;
HBITMAP hBmp;
HDC hDC;
hDC = BeginPaint(hWnd, &ps);
hBmp = (HBITMAP)LoadImage(0, "C:\\bitmap.bmp", IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE);
DrawState(hDC, 0, 0,(LPARAM)hBmp, 0, x, y, longueur_image, hauteur_image, DST_BITMAP); // dessine le bitmap aux coordonnées x,y

DeleteObject(hBmp);
EndPaint(hWnd, &ps);
return 0;


Voila ;)
0
Rejoignez-nous