Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi StringGrid ohne Focus (https://www.delphipraxis.net/128202-stringgrid-ohne-focus.html)

alex.666 26. Jan 2009 09:58


StringGrid ohne Focus
 
ich verwende ein sg (2X2). es sollen nur infos angezeigt werden.
ich möchte aber nicht, dass der focus (oncreate) gleich auf cells[0,0] gesetzt wird (schaut scheisse aus). :-)
ich will auch nicht, dass der user einzelne cells selectieren kann.

fazit:

mein sg soll optisch die eigenschaften haben, als wäre enabled := false, aber ich benötige die mouse events.

eine idee wäre, sg.enabled := false und darüber ein transparentes panel legen (mit OnMouseDown Event), aber das ist halt auch
etwas eigenartig. :-)

vielen dank.

himitsu 26. Jan 2009 10:29

Re: StringGrid ohne Focus
 
Wenn du die Zellen selber zeichnest, dann könntest du den Fokus verstecken (diesen einfach nicht zeichnen).

bzw. wenn du z.B. OnEnter gleich wieder einer anderen Komponente den Fokus zuteilst.

alex.666 26. Jan 2009 12:22

Re: StringGrid ohne Focus
 
ich hab jetzt versucht, den fokus auf eine andere komponente zu setzen (on enter), aber das erste feld bleibt immer noch blau.
bekomm ich das auch noch weg?

worker 26. Jan 2009 12:35

Re: StringGrid ohne Focus
 
Probier mal, den Fokus außerhalb der Range zu setzen, also z.B. auf (ColCount + 1, RowCount + 1);

alex.666 26. Jan 2009 13:02

Re: StringGrid ohne Focus
 
hab ich auch schon versucht -> fehlermeldung. :-)
ich hab auch nirgenst eine möglichkeit gefunden, um das blau in weiss umzufärben.

vieleicht kann man das ja auch anders lösen?

ich brauche eine tabelle, die der benutzer NICHT editieren kann sondern nur sieht.

KellnerNr. TischNr.
ReNr. TimeStamp

in weiss, ohne lienien und keine grafik sondern text. hab schon an listbox gedacht, aber da hab ich das selbe problem mit dem fokus.
ansonst 4 x label, ist aber mühsam.

Hansa 26. Jan 2009 13:50

Re: StringGrid ohne Focus
 
Schreibe das hier :

Delphi-Quellcode:
  sg.Options := sg.Options + [goAlwaysShowEditor];
mal ins FormShow. Normalerweise müsste dann zumindest das Blau weg sein.

alex.666 26. Jan 2009 17:14

Re: StringGrid ohne Focus
 
danke, aber leider bleibt die blaue cells. immer wenn stringgrid den focus verliert.
ich verwende turbo delphi 2006.
bin schon am überlegen, eine eigerne komponente zu basteln, da muss ich mich aber noch etwas reinlesen...

himitsu 26. Jan 2009 17:22

Re: StringGrid ohne Focus
 
Wie gesagt, im Notfall hättest du auch über OnDrawCell selber Zeichen können.

Delphi-Quellcode:
Var R: TGridRect;

FillChar(R, SizeOf(R), -1);
StringGrid1.Selection := R;

alex.666 26. Jan 2009 17:49

Re: StringGrid ohne Focus
 
danke, funktioniert jetzt alles super....


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:14 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz