http://cbuilder.borlandforum.com/impboard/impboard.dll?action=read&db=bcb_qna&no=76478
볼랜드포럼: TRzComboBox 항목 개별 색상 변경
안녕하세요 궁금한 게 있어서 처음 글써봅니다. 해당 사이트로 업무에 많은 도움을 받고 있는 점 우선 감사 인사드립니다. 제목 그대로 TRzComboBox로 항목들을 분류하고 있는데요 Items의 각 항목들
cbuilder.borlandforum.com
콤보박스 에서 아이템별로 색상 ( 또는 다른거... ) 을 변경하고 싶으면.. Style 을 csOwnerDrawFixed 로 변경하고 OnDrawItem 에서 코딩으로 처리 하면 된다. -- Style 에 따라 달라지니 다른 스타일도 참고해보자. --
보통 OwnerDraw 로 검색하면 될꼴...
Items 에 RED, BLUE, YELLOW 라고 있다고 하고 Events 탭에서 OnDrawItem 을 더블클릭해서 이벤트 프로시져를 만들어보자.
procedure TForm1.ComboBox1DrawItem(Control: TWinControl; Index: Integer;
Rect: TRect; State: TOwnerDrawState);
var
cItemText: string;
vCB: TComboBox absolute Control; // 타입캐스팅을 하기 귀찮으니 absolute 로...
cColor: TColor;
begin
cItemText:= vCB.Items[ Index ]; // Items 에서 값을 가져와서 값에 색상을 정한다.
if cItemText = 'RED' then
cColor:= clRED
else if cItemText = 'YELLOW' then
cColor:= clYellow
else if cItemText = 'BLUE' then
cColor:= clBlue;
//canvas 를 조작하여 색상을 설정하고 문자열을 찍어준다. 배경색등 각종설정을 원하는대로 설정
vCB.Canvas.Font.Color:= cColor;
vCB.Canvas.FillRect( Rect );
vCB.Canvas.TextOut(Rect.Left+10, Rect.Top, cItemText );
end;
TListBox 도 한번 해보자...
반응형
'삽질' 카테고리의 다른 글
delphi / ip 문자열 <-> 숫자 (0) | 2025.01.21 |
---|---|
키움증권 해외파생 - OpenAPI(w) 자동로그인/계좌비번설정 자동화 (0) | 2024.02.26 |
NeuroTechonology FingerPrint SDK 13 이용기 (1) | 2023.06.01 |
delphi - cxGrid - row별 Column implement editior 설정. (0) | 2022.06.24 |
git - 토큰 인증. (0) | 2022.04.14 |