begin process at 2012 02 13 07:42:58
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Divers

 > 

Débutant(e)

 > 

code mot clignotant


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

code mot clignotant

lundi 15 mars 2010 à 21:03:48 | code mot clignotant

sisi06

Bonjour,
je voudrais S.V.P un code en language C (C++) qui me permet d'avoir le mot "WELCOME" en mode clignotant en divers couleurs
merci pour votre aide
lundi 15 mars 2010 à 21:21:48 | Re : code mot clignotant

BruNews

Administrateur CodeS-SourceS
- Quel OS ?
- Quel composant d'affichage ?

ciao...
BruNews, MVP VC++
lundi 15 mars 2010 à 21:56:04 | Re : code mot clignotant

sisi06

- vista
- c'est quoi composant d'affichage??
lundi 15 mars 2010 à 22:32:27 | Re : code mot clignotant

BruNews

Administrateur CodeS-SourceS
EDIT
STATIC
LISTBOX
etc, etc.

ciao...
BruNews, MVP VC++
lundi 15 mars 2010 à 22:40:47 | Re : code mot clignotant

sisi06

je ne sais pas je suis debutante et je ne connais pas trop ces trucs
je veux seulement afficher le mot WELCOME lors de l'execution de programme qui clignote avec des couleurs
dimanche 21 mars 2010 à 15:43:44 | Re : code mot clignotant

rt15

Membre Club Administrateur CodeS-SourceS
Salut,

Couleur -> SetTextColor/SetBkColor dans WM_CTLCOLORSTATIC.
Clignotement -> SetTimer + SetWindowText
Taille -> CreateFontIndirect

Toutes ces fonctions sont documentées dans la msdn.

Appli GUI en C sans MFC:
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                */
HWND _hStatic;                         /* Handle sur le static                */
LPTSTR _lpAppName = _T("WELCOME");     /* Nom de l'appli                      */

BOOL _bDisplayed = TRUE;               /* Pour alterner l'affichage           */
HFONT _hMainFont = NULL;               /* Police de base                      */
HBRUSH _hMainBrush = NULL;             /* Brush de la couleur de la fenêtre   */

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)
{
  int bHandled;               /* Pour savoir si le message est traité          */
  long nResult;

  nResult = 0;
  bHandled = 0;
  switch (nMessage)
  {
    case WM_CTLCOLORSTATIC:
      if ((HWND)lParam == _hStatic)
      {
        SetTextColor((HDC)wParam, RGB(255, 0, 0));
        SetBkColor((HDC)wParam, GetSysColor(COLOR_BTNFACE));
        nResult = (long)_hMainBrush;
        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;
}

HFONT __stdcall GetStaticFont()
{
  NONCLIENTMETRICS metrics; /* Récupération des métriques                     */
  HFONT hResult;

  hResult = NULL;

  metrics.cbSize = sizeof(NONCLIENTMETRICS);
  if (! SystemParametersInfo(SPI_GETNONCLIENTMETRICS,
      sizeof(NONCLIENTMETRICS), &metrics, 0))
  goto the_end;

  metrics.lfCaptionFont.lfHeight = 80;
  metrics.lfCaptionFont.lfWeight = FW_BOLD;
  hResult = CreateFontIndirect(&metrics.lfCaptionFont);

the_end:
  return hResult;
}

HWND __stdcall CreateMyStatic()
{
  HWND hResult;

  hResult = CreateWindowEx(0, _T("STATIC"), _T("WELCOME"),
                           WS_VISIBLE | WS_CHILD,
                           10, 10, 450, 100,
                           _hWnd, NULL, _hThisInstance, NULL);
  if (! hResult) goto the_end;
  SendMessage(hResult, WM_SETFONT, (long)_hMainFont, 0);

the_end:
  return hResult;
}

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;

  _hStatic = CreateMyStatic();
  if (! _hStatic) goto the_end;

  /* Affichage de la fenêtre */
  ShowWindow (_hWnd, SW_SHOW);

  nResult = 1;
the_end:
  return nResult;
}

VOID CALLBACK TimerCallback(HWND hwnd,  UINT uMsg,  UINT_PTR idEvent,  DWORD dwTime)
{
  if (_bDisplayed)
    SetWindowText(_hStatic, _T(""));
  else
    SetWindowText(_hStatic, _T("WELCOME"));

  _bDisplayed = ! _bDisplayed;
}

/**
 * Main
 */
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
  MSG message;                        /* Messages envoyés à l'application     */
  UINT nTimer;                        /* Identifiant du timer                 */
  int nResult;

  /* Récupération du handle du module */
  _hThisInstance = hInstance;

  _hMainFont = GetStaticFont();
  _hMainBrush = CreateSolidBrush(GetSysColor(COLOR_BTNFACE));

  if (! CreateMyWindow())
  {
    nResult = Err_ShowLast(_T("Cannot create main window"));
    goto the_end;
  }

  nTimer = SetTimer(NULL, 0, 750, TimerCallback);

  /* Boucle de traitement des messages */
  while (GetMessage(&message, NULL, 0, 0))
  {
    TranslateMessage(&message);
    DispatchMessage(&message);
  }
  nResult = message.wParam;

  KillTimer(NULL, nTimer);

the_end:
  if (_hMainFont != NULL)
    DeleteObject(_hMainFont);
  if (_hMainBrush != NULL)
    DeleteObject(_hMainBrush);
  return nResult;
}


Cette discussion est classée dans : code, mot, clignotant


Répondre à ce message

Sujets en rapport avec ce message

conversion char-->hexadécimal [ par ivdz ] Bonjour,Est-ce que quelqu'un sait convertir un char en sa valeur hexadécimal ?Voici ce que j'ai essayé :char mot[]="255";int hexa;sscanf(mot Pb test ! help !!!! [ par ast ] Bonsoir a tous !Je souhaiterais réaliser un code qui me demande un mot de passe et qui me rende la main lorsque le bon mot de passe est entre, mais pr Probleme liste chainee [ par jomanix ] Comme je ne vois pas l'arbre au milieu de la foret je m'en remet a vousC'est un dictionnaire et pour l'instant je ve juste afficher mon arbre bianaire Code source incomplet en C [ par Sneakito ] Je suis un débutant, or j'ai un programme assez complexe à réaliser(pour moi), voici ce qu'il doit faire:Remplacer un mot dans une page html (hors bal controle mot de passe [ par jetix ] Salut à tous, j'ai besoin d'aide concernant sur ce bout de code écrit en devc++. Son principe est de récupérer le mot de passe écrit par l'utilisateur fichiers en C [ par youssefmahdia ] salut les amis,j'ai un petit problème;je suis entrain de faire du codage, en fait, j'associe à chaque symbole un mot de code.int sym[N];int mot[N];for Vecteur de pointeur de char [ par noname001 ] Bonsoir à tous. J'ai un petit soucis avec un vecteur de pointeur de char. Voici premièrement sa déclaration [code=cpp] char *mots_cles[MAX_MOTS_CLES Demande de code [ par wowcrax ] Bonjour, je suis nouveau sur ce forum et j'ai remarqué qu'il y avait beaucoup de personnes compétente dans le langage C. De plus je dois dire, que je


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,966 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales