nedded aide en vc++ et API windows

nedded aide en vc++ et API windows - Programmation

Marsh Posté le 14-02-2002 à 11:55:09    

(c pour un copin à moi):
voila ce que je doit faire :
 
appeller la fonction SetSysColors de user32.dll dans un programme C/C++ (si
possible sans fenetre apparente)...
 
En VB ca donne ca:
 
 
Private Declare Function SetSysColors Lib "user32.dll" (ByVal cElements As
Long, lpaElements As Long, lpaRgbValues As Long) As Long
 
Const COLOR_3DHILIGHT = 20
Const COLOR_3DLIGHT = 21
Const COLOR_3DSHADOW = 16
Const COLOR_GRAYTEXT = 17
--------------------------------------------------
--------------------------
-----------------
Private Sub Command1_Click()
    Dim retval As Long
    retval = SetSysColors(1, COLOR_GRAYTEXT, RGB(0, 0, 0))
    retval = SetSysColors(1, COLOR_3DSHADOW, RGB(50, 50, 50))
    retval = SetSysColors(1, COLOR_3DLIGHT, RGB(150, 150, 150))
    retval = SetSysColors(1, COLOR_3DHILIGHT, RGB(240, 240, 240))
End Sub
 
 
 
MAis comme on a pas les licences VB comment appeler cette api a partir cd vc++ ?
Merci d'avance

Reply

Marsh Posté le 14-02-2002 à 11:55:09   

Reply

Marsh Posté le 14-02-2002 à 13:02:20    

Les API, elles s'appellent directement, il me semble (je suis comme Mr Jourdain, j'utilise les API sans me questionner).
 
BOOL WINAPI SetSysColors(
    int cElements, // number of elements to change  
    CONST INT *lpaElements, // address of array of elements  
    CONST COLORREF *lpaRgbValues  // address of array of RGB values  
   );
 
La valeur de retour ne semblerait pas être un long (mais ça gène pas trop car null si succès, non nul si échec de la fonction).
 
Il semble qu'il faudrait ajouter  
#include <winuser.h>
 
// Utilisation
 
  BOOL retval;  
   retval = SetSysColors(1, COLOR_GRAYTEXT, RGB(0, 0, 0));  
   retval = SetSysColors(1, COLOR_3DSHADOW, RGB(50, 50, 50));  
   retval = SetSysColors(1, COLOR_3DLIGHT, RGB(150, 150, 150));  
   retval = SetSysColors(1, COLOR_3DHILIGHT, RGB(240, 240, 240));  
 
Si les constantes ne sont pas définies par Windows
#define COLOR_3DHILIGHT 20  
#define COLOR_3DLIGHT 21  
#define COLOR_3DSHADOW 16  
#define COLOR_GRAYTEXT 17

Reply

Marsh Posté le 14-02-2002 à 13:17:48    

merci bcp pour ton aide. Je lui transmet tout ca..

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed