![]() |
FireMonkey StringGrid
Vorweg: Frisch installiertes XE2 Update2 unter Win7x64 kompiliert als x86 Anwendung.
Ich werd grad wahnsinnig. Ich hab mir einen kleinen Sudokulöser unter XE gebastelt, und will das jetzt mal in XE2 mit FireMonkey "aufhübschen". In VCL hatte ich ein TStringGrid zur Darstellung des Sudokus verwendet. In FMX macht mir das eigentlich nur Probleme. Ich liste mal auf, wo ich Hilfe oder antworten bräuchte: 1) Ich Fülle das Grid im OnCreateForm mit einem Default-Sudoku. In VCL wurden die Werte sofort gezeigt, im FMX erst nach Mausrad drehen über dem Grid. WTF? 2) Das VCL-Stringgrid hat linke obere Zelle
Delphi-Quellcode:
und rechte untere Zelle
Grid.Cells[0,0]
Delphi-Quellcode:
. Beim FMX StringGrid bin ich mir nicht sicher, was was ist, denn ich bekomme die Felder nach rechts verschoben befüllt, wenn ich 0-basiert bis 8 fülle und ne Schutzverletzung in der letzten Spalte, wenn ich 1 basiert bis 9 fülle. WTF?
Grid.Cells[8,8]
3) Ich erzeuge das Grid zur Designzeit und lege die Anzahl Rows per RowCount fest, die Columns füge ich per Eintragseditor hinzu. Im OI sag ich für das Grid
Delphi-Quellcode:
und mach das selbse sicherheitshalber im OnformCreate nochmal. Dennoch wird ein Header gezeigt, bis ich mit dem Mausrad über dem Grid gedreht habe. WTF?
ShowHeader := False
Mache ich etwas Falsch? Habe ich falsche Erwartungen? Was muss ich tun damit das Ding erwartungskonform arbeitet. Sherlock |
AW: FireMonkey StringGrid
Ich schaue mir das einmal heute Abend genauer an. Hast du es einmal mit z.B. OnShow statt OnCreate versucht?
Ich hatte mir die Komponente nicht genauer angeschaut und arbeite stattdessen an einer virtuellen Treegridkomponente für FireMonkey. Die kann zwar bisher noch nicht viel, aber ich hoffe ich komme damit nach Weihnachten voran. :wink: |
AW: FireMonkey StringGrid
Ha, das wäre noch ein weiterer Punkt in meiner Liste geworden. FMX Forms haben kein OnShow. :D WTF?
Danke fürs reinschauen :thumb: Sherlock |
AW: FireMonkey StringGrid
1. weniger fluchen
2. Nimm Form.OnActivate, dann klappt's |
AW: FireMonkey StringGrid
1. Ich fluche ja nicht. Ich sag nur "Welch tolle Funktion"...mehrfach ;)
2. Das behebt nicht mein Indizierungsproblem. Sherlock |
AW: FireMonkey StringGrid
Also, bei mir klappt's:
Im OI: - ShowHeader:= false; - RowCount:= 8; - Columns 0 bis 9 erstellt;
Delphi-Quellcode:
Vielleicht zeigst Du mal Deinen Code? Erstelle einfach nochmal ein neues FMX Project mit Stringgrid drauf und o.g. Code im OnActivate...
TForm1.OnActivate(Sender: TObject);
var i, j: integer; begin for i:= 0 to 8 do for j:= 0 to 8 do Grid.Cells[i, j]:= intToStr(i) + IntToStr(j); end; Wenn's dann immernoch nicht geht, liegt's evtl. an Deiner FMX Installation. :gruebel: |
AW: FireMonkey StringGrid
OK, also irgendwie war wohl das StringGrid durcheinandergeraten. Ich tippe auf einen vertauschten Column, also sorry für die Panik. Was bleibt ist aber folgendes:
- Ich bekomme den Header nicht weg. - Wenn Scrollbars eingeschaltet sind, zeichnet das Grid initial in die Scrollbars rein. Nach einmal scrollen ist das gefixt. - Warum gibt es diesen krassen Unterschied im Verhalten zwischen Onshow und OnActivate? Aber das Befüllen und Auslesen ist nun kein Problem mehr :thumb: Der Rest ist ja nur Kosmetik (was ja eigentlich die Existenzberechtigung von FMX sein soll, aber so what). Sherlock |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:31 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-2025 by Thomas Breitkreuz