AGB  ·  Datenschutz  ·  Impressum  







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

Borderstyle einer Combobox?

Ein Thema von Basic-Master · begonnen am 30. Mär 2004 · letzter Beitrag vom 30. Mär 2004
Antwort Antwort
Seite 1 von 2  1 2      
Basic-Master

Registriert seit: 9. Mär 2003
Ort: Brilon
395 Beiträge
 
Delphi 2007 Enterprise
 
#1

Borderstyle einer Combobox?

  Alt 30. Mär 2004, 15:28
Hi,
gibt es eine möglichkeit bei einer combobox den borderstyle auf bsNone umzustellen
Christian
  Mit Zitat antworten Zitat
DelphiDeveloper

Registriert seit: 9. Apr 2003
Ort: Köln
256 Beiträge
 
Delphi XE2 Enterprise
 
#2

Re: Borderstyle einer Combobox?

  Alt 30. Mär 2004, 16:28
es ist IMHO gar nicht so einfach.

Delphi-Quellcode:
 TComboBoxWithBorderStyle = class(TComboBox)
  private
    { Private-Deklarationen }
    FBorderStyle: TBorderStyle;
    procedure SetBorderStyle(const Value: TBorderStyle);
     protected
    { Protected-Deklarationen }
  public
    { Public-Deklarationen }
    published
    { Published-Deklarationen }
     property BorderStyle: TBorderStyle read FBorderStyle write SetBorderStyle default bsSingle;
  end;
Du kannst zwar schnell das Property ergaenzen aber dann geht die Arbeit im SetBorderStyle
erst richtig los. Du muss deine ComboBox ja jetzt anders zeichnen lassen. Das Edit den PfeilButton
und evtl. auch noch die aufgeklappte Box.
Ich wuerde mal nach FlatComboBox googlen und schauen wie die das dort gemacht
haben.
  Mit Zitat antworten Zitat
neolithos

Registriert seit: 31. Jul 2003
Ort: Dresden
1.386 Beiträge
 
Delphi 7 Architect
 
#3

Re: Borderstyle einer Combobox?

  Alt 30. Mär 2004, 16:40
Versuch mal dasSetWindowLong(ComboBox1.Handle, GWL_EXSTYLE, GetWindowLong(ComboBox1.Handle, GWL_EXSTYLE) and not WS_EX_CLIENTEDGE); Geht das nicht muss ich stärkere geschütze Auffahren
- ciao neo -
Es gibt niemals dumme Fragen, sondern nur dumme Antworten!
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#4

Re: Borderstyle einer Combobox?

  Alt 30. Mär 2004, 16:44
@neolithos: das geht nicht
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
neolithos

Registriert seit: 31. Jul 2003
Ort: Dresden
1.386 Beiträge
 
Delphi 7 Architect
 
#5

Re: Borderstyle einer Combobox?

  Alt 30. Mär 2004, 16:47
Und wie sieht es damit aus:

Delphi-Quellcode:
TFlatCombo = class (TComboBox)
protected
  procedure CreateParams(var Params : TCreateParams); override;
end;

procedure TFlatCombo.CreateParams(var Params : TCreateParams);
begin
  inherited;
  with Params do
    ExStyle := ExStyle and not WS_EX_CLIENTEDGE;
end;


EDIT: Fehler beseitigt! Wer lesen kann ist klar im Vorteil! Vorallem die eigenen Texte!
- ciao neo -
Es gibt niemals dumme Fragen, sondern nur dumme Antworten!
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#6

Re: Borderstyle einer Combobox?

  Alt 30. Mär 2004, 17:01
geht gar nicht:
1.) Das override musste hinter der implementation weg
2.) In der Zeile
Params := Params and not WS_EX_CLIENTEDGE kommt die Fehlermeldung: "Operator not applicable to this operandtype
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
neolithos

Registriert seit: 31. Jul 2003
Ort: Dresden
1.386 Beiträge
 
Delphi 7 Architect
 
#7

Re: Borderstyle einer Combobox?

  Alt 30. Mär 2004, 17:03
Klappt es jetzt?
- ciao neo -
Es gibt niemals dumme Fragen, sondern nur dumme Antworten!
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#8

Re: Borderstyle einer Combobox?

  Alt 30. Mär 2004, 17:08
Nein, bleibt weiterhin mit border, aber das war auch anzunehmen da setwindowlong ja eigentlich das gleiche macht
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
neolithos

Registriert seit: 31. Jul 2003
Ort: Dresden
1.386 Beiträge
 
Delphi 7 Architect
 
#9

Re: Borderstyle einer Combobox?

  Alt 30. Mär 2004, 17:13
Stimmt!

Aber es liegt daran, das ich einem Irtum aufgelaufen bin. Ich dachte die ComboBox funktioniert ähnlich der TextBox. Dummerweise zeichnet die ComboBox den Rahmen anders.
- ciao neo -
Es gibt niemals dumme Fragen, sondern nur dumme Antworten!
  Mit Zitat antworten Zitat
neolithos

Registriert seit: 31. Jul 2003
Ort: Dresden
1.386 Beiträge
 
Delphi 7 Architect
 
#10

Re: Borderstyle einer Combobox?

  Alt 30. Mär 2004, 17:18
In der ComboBox wird der Rahmen auf die ClientArea gezeichnet. Das bedeutet, wenn man ihn loswerden möchte müsste man da ansetzen. Das ist aber recht gefährlich und umfangreich!

> falls du eine Lösung gefunden hast, poste sie bitte mal <
- ciao neo -
Es gibt niemals dumme Fragen, sondern nur dumme Antworten!
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 22:12 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