Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

ComboBox... [D5, Win95/98]


Страницы:   1 2

First_May ©   (2002-11-26 10:49:00) 

Привет всем! Можно ли в ComboBox`е выводить строчки разными шрифтами?


Игорь Шевченко   (2002-11-27 16:18:00) [1]

А ... Demos глядеть - религия запрещает, FAQ тоже лень глядеть.


Andrey007   (2002-11-27 16:13:00) [2]

IMHO, FAQ на этом сайте нужно сделать по компонентам. Вопрос, заданный First_May, задаётся здесь уже 10-й, если не 100-й раз.


Sirim   (2002-11-27 15:13:00) [3]

Здравствуй First_May!!!
У меня к тебе небольшая просьба, как я вижу мне нужен то, что ты делаешь. Т.е. я хотел попросить тебя, не мог бы выставить код программы, как правильно создать ComboBox c несколькими колонками (желательно на С++ или хотя бы на Delphi). И как правильно заполнять эти колонки. Извиняюсь за такую просьбу, но я только начинаю программировать.
Заранее спасибо.


Sirim   (2002-11-27 15:11:00) [4]

Здравствуй First_May!!!
У меня к тебе небольшая просьба, как я вижу мне нужен то, что ты делаешь. Т.е. я хотел попросить тебя, не мог бы выставить код программы, как правильно создать ComboBox c несколькими колонками (желательно на С++ или хотя бы на Delphi). И как правильно заполнять эти колонки.
Заранее спасибо.


Игорь Шевченко   (2002-11-27 12:13:00) [5]

First_May © (27.11.02 11:16)

http://ln.com.ua/~openxs/articles/smart-questions-ru.html- читать наизусть.


First_May   (2002-11-27 11:16:00) [6]

То Song © (27.11.02 10:24)
А ты наверное действительно "МАСТЕР", но только неизвестно по чем. Сайт сделан для "передачи" ОПЫТА разработки прогрмамм, а не для РУГАНИ. По моему, я тебе ничего плохого не сделал, что бы ты мне говорил такие слова... Иногда надо думать прежде чем говорить!


Song   (2002-11-27 10:24:00) [7]

>>То Andrey007 (27.11.02 10:10) - ОГРОМНОЕ СПАСИБО!!!
А ты хэлпом пользоваться умеешь?

Occurs when an item in an owner-draw combo box needs to be displayed.

property OnDrawItem: TDrawItemEvent;

Description

Write an OnDrawItem event handler to draw the items in the drop-down list of an owner-draw combo box. An OnDrawItem event handler can add graphic elements to the list items, or replace the list item text by graphics.

[b]Draw the items on the Canvas using the coordinates provided by the Rect parameter. OnDrawItem occurs only if Style is set to csOwnerDrawFixed or csOwnerDrawVariable.[/b]

If an OnDrawItem event handler is not provided, the combo box fills the Rect parameter with the current brush and writes the text value of the item specified by the Index parameter.

Тебе уже три готовых решения привели, а ты так и недосужился заглянуть в хэлп, идиот!!!!

2ALL: Sorry, я просто не сдержался. Таких недоумков первый раз вижу.


Song   (2002-11-27 10:21:00) [8]

>>А ты сам проверял этот текст кода???? Он у тебя работает???
Проверял. Всё работает!!! Обычно не проверяю. А вот для тебя проверил перед тем как писать в тред. Посмотри такжн сообщение Andrey007 (27.11.02 10:10). Конечно он не совсем прав: свойство TComboBox.Style может быть не только csOwnerDrawFixed, оно может быть csOwnerDrawVariable


First_May   (2002-11-27 10:21:00) [9]

То Andrey007 (27.11.02 10:10) - ОГРОМНОЕ СПАСИБО!!!


First_May   (2002-11-27 10:19:00) [10]

То Song © (27.11.02 09:36)
А ты сам проверял этот текст кода???? Он у тебя работает??? Я деляю тоже самое, и у меня ничего не происходит. И только поэтомуи задал этот вопрос мастерам Delphi, надеясь на то, что они мне подскажут, а не будут писать "Да ты достал... "


Andrey007   (2002-11-27 10:10:00) [11]

У TComboBox"a свойство Style должно иметь значение csOwnerDrawFixed.


Song   (2002-11-27 09:36:00) [12]

Да ты достал... Неужели трудно сделать такую ерунду?

procedure TForm1.ComboBox1DrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState);
begin
With TComboBox(Control),TComboBox(Control).Canvas Do
Begin
FillRect(Rect);
IF Index=2 then Font.Style:=[fsBold] else Font.Style:=[];
TextOut(Rect.Left+2,Rect.Top+2,Items[Index]);
End;
end;


First_May   (2002-11-27 09:08:00) [13]

Ну кто нибудь мне подскажит как сделать в ComboBox`е например третью строчку жирным шрифтом, а остальные обычным...


First_May   (2002-11-26 18:00:00) [14]

То Andrey007 (26.11.02 15:55)
А у тебя это пример кода работает нормально???


Andrey007   (2002-11-26 15:57:00) [15]

Упс, забыл Canvas дописать перед Font и TextOut


Song   (2002-11-26 15:56:00) [16]

2Andrey007 (26.11.02 15:55)
>>with TComboBox(Control) do
Вовсе необязательно


Andrey007   (2002-11-26 15:55:00) [17]

Надо так:

TComboBox(Control).Canvas.FillRect(Rect);
with TComboBox(Control) do
begin
Font.Name := Items[Index];
Font.Size := 0; // use font"s preferred size
TextOut(Rect.Left+1, Rect.Top+1, Items[Index])
end;


Song   (2002-11-26 15:53:00) [18]

А как ругается-то?


First_May   (2002-11-26 15:48:00) [19]

Ну тогда, когда я делаю вот так (взял из примера Demos)

procedure TForm1.DrawItem(Control: TWinControl; Index: Integer;
Rect: TRect; State: TOwnerDrawState);
begin
with Combo.Canvas do
begin
FillRect(Rect);
Font.Name := Combo.Items[Index];
Font.Size := 0; // use font"s preferred size
TextOut(Rect.Left+1, Rect.Top+1, Combo.Items[Index]);
end;
end;

то она ругается на FillRect(Rect); ...


Song   (2002-11-26 14:53:00) [20]

Одинаковый :)

TCanvas.Font.Color:=clRed например


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо