Список для выбора цветаDelphi , Графика и Игры , Цвета и ПалитраСписок для выбора цвета
Оформил: DeeCo { IMPORTANT: This code won't run if you don't change the ComboBox or ListBox's property "Style" to csOwnerDrawVariable. WICHTIG: Die Eigenschaft "Style" der ComboBox muss auf csOwnerDrawVariable gesetzt werden, damit der Code funktioniert } const COLOR_NUM = 15; ColorConst: array [0..COLOR_NUM] of TColor = (clBlack, clMaroon, clGreen, clOlive, clNavy, clPurple, clTeal, clGray, clSilver, clRed, clLime, clYellow, clBlue, clFuchsia, clAqua, clWhite); ColorNames: array [0..COLOR_NUM] of string = ('Black', 'Maroon', 'Green', 'Olive', 'Navy', 'Purple', 'Teal', 'Gray', 'Silver', 'Red', 'Lime', 'Yellow', 'Blue', 'Fuchsia', 'Aqua', 'White'); implementation {...} procedure TForm1.ComboBox1DrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState); begin with (Control as TComboBox).Canvas do begin FillRect(Rect); TextOut(30, Rect.Top, ComboBox1.Items[Index]); Pen.Color := clBlack; Brush.Color := ColorConst[Index]; Rectangle(Rect.Left + 2, Rect.Top + 2, 24, Rect.Top + 15); end; end; procedure TForm1.FormCreate(Sender: TObject); var i: Integer; begin for i := Low(ColorNames) to High(ColorNames) do ComboBox1.Items.Add(ColorNames[i]); end; Вот перевод текста на русский язык: Переменные и константы Код определяет два массива: Процедура ComboBox1DrawItem Эта процедура отвечает за отрисовку каждого элемента в комбо-боксе. Она принимает четыре параметра:
Процедура выполняет следующие действия:
Процедура FormCreate Эта процедура вызывается при создании формы. Она перебирает массив Замечания
В целом, этот код создает список выбора палитры цветов с 15 цветами и их соответствующими именами. Каждый элемент списка отображается с помощью процедуры custom drawing, которая устанавливает цвета кисти и пера в зависимости от индекса текущего элемента. Курсор цвета - пример программирования на Delphi, демонстрирующий создание комбобокса с собственными рисунками и выбором цвета из списка доступных вариантов. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта. :: Главная :: Цвета и Палитра ::
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |