_Viktor Master


Registrado: 20 Jul 2003Mensajes: 463Ubicación: Santiago, Los Angeles - Chile
|
Publicado: Vie 28 Nov, 2003 12:27 am Asunto: |
|
|
Para agregar imagenes en un TListBox esto te servira:
| Código: |
//---------------------------------------------------------------------------
#ifndef Unit1H
#define Unit1H
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
//---------------------------------------------------------------------------
class TForm1 : public TForm
{
__published: // IDE-managed Components
TComboBox *ComboBox1;
void __fastcall FormCreate(TObject *Sender);
void __fastcall ComboBox1DrawItem(TWinControl *Control, int Index,
TRect &Rect, TOwnerDrawState State);
void __fastcall ComboBox1MeasureItem(TWinControl *Control,
int Index, int &Height);
private: // User declarations
Graphics::TBitmap *ima;
public: // User declarations
__fastcall TForm1(TComponent* Owner);
};
//---------------------------------------------------------------------------
extern PACKAGE TForm1 *Form1;
//---------------------------------------------------------------------------
#endif
|
| Código: | //---------------------------------------------------------------------------
#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)
{
ComboBox1->Style = ComboBox1->Style << csOwnerDrawFixed;
ima = new Graphics::TBitmap;
ima->LoadFromFile("G:\\Borland\\Borland Shared\\Images\\Default\\outleaf.bmp");
ComboBox1->Items->AddObject("Item1", ima);
ComboBox1->Items->AddObject("Item2", ima);
ComboBox1->Items->AddObject("Item3", ima);
ComboBox1->Items->AddObject("Item4", ima);
ComboBox1->Items->AddObject("Item5", ima);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::ComboBox1DrawItem(TWinControl *Control, int Index,
TRect &Rect, TOwnerDrawState State)
{
Graphics::TBitmap *Bitmap = new Graphics::TBitmap;
Integer Offset;
ComboBox1->Canvas->FillRect(Rect);
Bitmap = reinterpret_cast<Graphics::TBitmap*>(ComboBox1->Items->Objects[Index]);
if( Bitmap != NULL )
{
ComboBox1->Canvas->BrushCopy(Bounds(Rect.Left+2, Rect.Top, Bitmap->Width, Bitmap->Height),
Bitmap,
Bounds(0, 0, Bitmap->Width, Bitmap->Height),
clRed);
Offset = Bitmap->Width + 8;
}
ComboBox1->Canvas->TextOut(Rect.Left + Offset, Rect.Top+2, ComboBox1->Items->Strings[Index]);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::ComboBox1MeasureItem(TWinControl *Control,
int Index, int &Height)
{
Height = 20;
}
//--------------------------------------------------------------------------- |
Aunque no se si exactamente para lo que lo quieres. Saludos!!!! _________________ "Ser inteligente no es ser mas, solo equivocarse menos y no usar Visual Basic"
Atte.
Victor Yañez
Apoyen el Proyecto OpenSource del Club Builder. Ya tenemos componentes Listos!!! |
|