AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

In Combobox Linien einfügen

Ein Thema von tom_po · begonnen am 14. Feb 2006 · letzter Beitrag vom 19. Feb 2006
Antwort Antwort
tom_po

Registriert seit: 5. Feb 2006
137 Beiträge
 
Delphi 7 Enterprise
 
#1

In Combobox Linien einfügen

  Alt 14. Feb 2006, 09:37
Ich habe eine TNTCombobox und stelle darin chinesische Wörter dar.

Um es übersichtlicher zu gestalten, möchte ich zwischen den einzelnen Zeilen jeweils eine Linie einfügen. Habe in den Eigenschaften gesucht, aber nichts gefunden...
Wie mache ich das?
Miniaturansicht angehängter Grafiken
combobox_linien_136.jpg  
  Mit Zitat antworten Zitat
tom_po

Registriert seit: 5. Feb 2006
137 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: In Combobox Linien einfügen

  Alt 14. Feb 2006, 18:18
Habe in einem anderen Forum dies gefunden, geht aber nicht;

Delphi-Quellcode:
procedure TMainForm.TntComboBox7DrawItem(Control: TWinControl;
  Index: Integer; Rect: TRect; State: TOwnerDrawState);
begin
 with tntcombobox7, tntcombobox7.Canvas do
  begin
    FillRect(rect);
    if Items[index]='_linethen
    begin
      if odSelected in State then Pen.Color := clWindow
      else Pen.Color := clBlack;

      PenPos := Point(Rect.Left, Rect.Top+(ItemHeight div 2));
      LineTo(Rect.Right, Rect.Top+(ItemHeight div 2));
    end else
      TextOut(rect.Left+2,rect.Top,Items[index]);
  end;
end;

procedure TMainForm.TntComboBox7Click(Sender: TObject);
begin
if tntcombobox7.ItemIndex=0 then
output;
if tntcombobox7.ItemIndex=1 then
showinfopessoas;
if tntcombobox7.ItemIndex=2 then
showproddata;
if tntcombobox7.ItemIndex=3 then
showprodlinha;
end;
Style der Kombobox habe ich so geändert:

csOwnerDrawVariable
  Mit Zitat antworten Zitat
Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#3

Re: In Combobox Linien einfügen

  Alt 14. Feb 2006, 18:40
Tolle Fehlerbeschreibung .
Hast du denn den Eventhandler überhaupt der Listbox zugewiesen?
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat
tom_po

Registriert seit: 5. Feb 2006
137 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: In Combobox Linien einfügen

  Alt 16. Feb 2006, 17:09
Es gibt keine grossartige Fehlerbeschreibung, die Kombobox zeigt einfach keine Linien zwischen den Zeilen.

Was meinst du mit Listbox?

Wie ordnet man das zu?
  Mit Zitat antworten Zitat
Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#5

Re: In Combobox Linien einfügen

  Alt 16. Feb 2006, 18:29
Zitat von tom_po:
Es gibt keine grossartige Fehlerbeschreibung, die Kombobox zeigt einfach keine Linien zwischen den Zeilen.
Das reicht doch schon als Fehlerbeschreibung. Das hattest du bis jetzt noch nicht verraten .

Zitat:
Was meinst du mit Listbox?
Nagut, Combobox, sollte aber nicht viel daran ändern .

Zitat:
Wie ordnet man das zu?
OI -> DeineCombobox -> Ereignisse -> Bei OnDrawItem deine Methode eintragen
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat
tom_po

Registriert seit: 5. Feb 2006
137 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: In Combobox Linien einfügen

  Alt 18. Feb 2006, 11:13
Danke zunächst mal Khabarakh!

Genau das habe ich ja gemacht, weiter oben gepostet, schreibe hier nochmal:

Delphi-Quellcode:
procedure TMainForm.TntComboBox7DrawItem(Control: TWinControl;
  Index: Integer; Rect: TRect; State: TOwnerDrawState);
begin
with tntcombobox7, tntcombobox7.Canvas do
  begin
    FillRect(rect);
    if Items[index]='_linethen
    begin
      if odSelected in State then Pen.Color := clWindow
      else Pen.Color := clBlack;

      PenPos := Point(Rect.Left, Rect.Top+(ItemHeight div 2));
      LineTo(Rect.Right, Rect.Top+(ItemHeight div 2));
    end else
      TextOut(rect.Left+2,rect.Top,Items[index]);
  end;
end;
Es ist zwar eine TnTCombobox, aber das sollte egal sein, habe bei ondrawitem eine Methode eingetragen, die ich gefunden hatte, es zeichnet aber nicht die Linien zwischen den Zeilen...
  Mit Zitat antworten Zitat
Lasse2002

Registriert seit: 29. Nov 2004
79 Beiträge
 
RAD-Studio 2009 Pro
 
#7

Re: In Combobox Linien einfügen

  Alt 19. Feb 2006, 14:45
Also wenn ich den Style der TntComboBox auf csOwnerDrawFixed setze, dann funktioniert deine Funktion bei mir einwandfrei.
Lasse
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:56 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz