Dans cet exemple nous allons charger le bitmap représentant le roi de carreau
depuis cards.dll, librairie contenant les cartes du fameux solitaire.
Sur une fiche Form1 poser un TButton Button1 et une TImage Image1.
Puis mettre le code suivant sur l'événement OnClick de Button1.
void __fastcall TForm1::Button1Click(TObject *Sender)
{
HINSTANCE HInstCard = LoadLibrary("cards.dll");
Image1->Picture->Bitmap->LoadFromResourceID((unsigned int)HInstCard,26);
FreeLibrary(HInstCard);
}
Nous allons voir à l'aide d'un exemple simple comment ajouter une console à un programme
fenêtré. Pour l'exemple nous utiliserons une fiche muni de deux boutons, qui servirons
à afficher deux messages différant dans la console. L'initialisation de la console se fera
sur l'événement OnCreate de la fiche et sa libération sur l'événement OnDestroy de la fiche.
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{
AllocConsole();
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE );
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
WriteConsole(GetStdHandle(STD_OUTPUT_HANDLE),
"Vulguaire message.\n",19,NULL,NULL);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
FOREGROUND_RED | FOREGROUND_INTENSITY);
WriteConsole(GetStdHandle(STD_OUTPUT_HANDLE),
"Message important.\n",19,NULL,NULL);
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE );
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormDestroy(TObject *Sender)
{
FreeConsole();
}
|