Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.08.26;
Скачать: [xml.tar.bz2];

Вниз

два вопроса по TComboBox   Найти похожие ветки 

 
>>DEATH<<   (2007-08-03 22:08) [0]

подскажите как сделать:
1 как зафиксировать Tехt(чтоб нельзя было менять)
2 как прорисовывать картинку перед надписью


 
Loginov Dmitry ©   (2007-08-03 22:34) [1]

1. Style = csDropDownList
2. как рисуешь? что не получается?


 
>>DEATH<<   (2007-08-03 22:49) [2]


> 2. как рисуешь? что не получается?

я и спрашиваю как рисовать


 
>>DEATH<<   (2007-08-03 22:50) [3]


> 2. как рисуешь? что не получается?

я и спрашиваю как рисовать


 
{RASkov} ©   (2007-08-04 02:37) [4]

> [3] >>DEATH<<   (03.08.07 22:50)
> я и спрашиваю как рисовать

Ну можно например так:
........
 private
   BitmapIco: TBitmap;
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
 ComboBox1.Style:=csOwnerDrawFixed;
 ComboBox1.ItemHeight:=21;
 BitmapIco:=TBitmap.Create;
 BitmapIco.Width:=ComboBox1.ItemHeight;
 BitmapIco.Height:=BitmapIco.Width;
 BitmapIco.Canvas.StretchDraw(BitmapIco.Canvas.ClipRect, Application.Icon);
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
 BitmapIco.Free;
end;

procedure TForm1.ComboBox1DrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState);
begin
 with TCombobox(Control) do begin
  Canvas.FillRect(Rect);
  Canvas.StretchDraw(Classes.Rect(Rect.Left, Rect.Top, Rect.Left+BitmapIco.Width, Rect.Bottom), BitmapIco);
  Canvas.TextOut(Rect.Left+BitmapIco.Width+2, Rect.Top+2, Items[Index]);
 end;
end;

Пример не из лучших, но понять как "рисовать" в элементах "комбика" можно.... Я взял для простоты иконку приложения для рисунка...
Наиболее "важные" моменты выделил жирным... Кстати этот пример отвечает на оба вопроса из [0].....
Я хоть и не использовал в данном примере State, но выделил его.... стоит обратить на этот параметр внимание....


 
>>DEATH<<   (2007-08-04 04:51) [5]

пасибо разобрался



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2007.08.26;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.04 c
2-1186069152
-==\AnGnA/==-
2007-08-02 19:39
2007.08.26
Куча вопросов


5-1158034357
demonnnn
2006-09-12 08:12
2007.08.26
события


15-1185772704
cosinus
2007-07-30 09:18
2007.08.26
Использование плагинов не на C (как в SDK), а на Delphi?


15-1185458570
Галинка
2007-07-26 18:02
2007.08.26
Посоветуйте компилятор Си


15-1185858638
Slider007
2007-07-31 09:10
2007.08.26
С днем рождения ! 31 июля 2007 вторник





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский