AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Delphi Frame Grid Eigenschaften speichern

Frame Grid Eigenschaften speichern

Ein Thema von Walter Landwehr · begonnen am 12. Feb 2018 · letzter Beitrag vom 13. Feb 2018
Antwort Antwort
Walter Landwehr

Registriert seit: 28. Mär 2006
Ort: 32816 Schieder-Schwalenberg
379 Beiträge
 
Delphi 10.4 Sydney
 
#1

Frame Grid Eigenschaften speichern

  Alt 12. Feb 2018, 10:40
Hallo,

ich habe auf einen Frame ein TcxGrid.
Beim Beenden der Form sollen die Eigenschaften des Grid gespeicheret werden. In einer Form rufe ich die folgende Procedere beim OnClose Ereignis auf.

Delphi-Quellcode:
procedure TfrmMitglieder.SaveGridPositions;
   var x : Integer;
begin
  if Constants.ProgOptions.Common.GridPosition then
    for x := 0 to ComponentCount - 1 do
      if Components[x] is TcxGridDBTableView then
        TcxGridDBTableView(Components[x]).StoreToRegistry(sRegistryPath + '\Custom\Grids\' + Components[x].Name);
end;
Aber wie mache ich es mit dem Grid auf einem Frame.

Vielen Dank für Eure Hilfe.
Walter Landwehr
Mfg

Walter
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.014 Beiträge
 
Delphi 12 Athens
 
#2

AW: Frame Grid Eigenschaften speichern

  Alt 12. Feb 2018, 11:27
if Components[x] is TFrame then und dann auch TFrame(Components[x]).Components durchlaufen
oder eine Speichermethode in den Frame und Diese aufrufen.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Walter Landwehr

Registriert seit: 28. Mär 2006
Ort: 32816 Schieder-Schwalenberg
379 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: Frame Grid Eigenschaften speichern

  Alt 12. Feb 2018, 14:11
Hallo himitsu,

so ganz verstanden habe ich das nicht Kannst Due mir da näher helfen.

Hier mal der Code des Frames.
Delphi-Quellcode:
unit Spenden;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes,
  Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, cxGraphics, cxControls,
  cxLookAndFeels, cxLookAndFeelPainters, cxStyles, dxSkinsCore, dxSkinBlack,
  dxSkinBlue, dxSkinBlueprint, dxSkinCaramel, dxSkinCoffee, dxSkinDarkRoom,
  dxSkinDarkSide, dxSkinDevExpressDarkStyle, dxSkinDevExpressStyle, dxSkinFoggy,
  dxSkinGlassOceans, dxSkinHighContrast, dxSkiniMaginary, dxSkinLilian,
  dxSkinLiquidSky, dxSkinLondonLiquidSky, dxSkinMcSkin, dxSkinMetropolis,
  dxSkinMetropolisDark, dxSkinMoneyTwins, dxSkinOffice2007Black,
  dxSkinOffice2007Blue, dxSkinOffice2007Green, dxSkinOffice2007Pink,
  dxSkinOffice2007Silver, dxSkinOffice2010Black, dxSkinOffice2010Blue,
  dxSkinOffice2010Silver, dxSkinOffice2013DarkGray, dxSkinOffice2013LightGray,
  dxSkinOffice2013White, dxSkinOffice2016Colorful, dxSkinOffice2016Dark,
  dxSkinPumpkin, dxSkinSeven, dxSkinSevenClassic, dxSkinSharp, dxSkinSharpPlus,
  dxSkinSilver, dxSkinSpringTime, dxSkinStardust, dxSkinSummer2008,
  dxSkinTheAsphaltWorld, dxSkinsDefaultPainters, dxSkinValentine,
  dxSkinVisualStudio2013Blue, dxSkinVisualStudio2013Dark,
  dxSkinVisualStudio2013Light, dxSkinVS2010, dxSkinWhiteprint,
  dxSkinXmas2008Blue, cxCustomData, cxFilter, cxData, cxDataStorage, cxEdit,
  cxNavigator, cxDataControllerConditionalFormattingRulesManagerDialog, Data.DB,
  cxDBData, cxButtonEdit, cxGridCustomTableView, cxGridTableView,
  cxGridDBTableView, IBODataset, cxGridLevel, cxClasses, cxGridCustomView,
  cxGrid, cxCalendar, cxCurrencyEdit, cxCheckBox;

type
  TframeSpenden = class(TFrame)
    cxGrSpendenView: TcxGridDBTableView;
    cxGrSpendenLevel: TcxGridLevel;
    cxGrSpenden: TcxGrid;
    cxGrSpendenViewDatum: TcxGridDBColumn;
    cxGrSpendenViewSpendenfallnummer: TcxGridDBColumn;
    cxGrSpendenViewSpendennummer: TcxGridDBColumn;
    cxGrSpendenViewSpendenfall: TcxGridDBColumn;
    cxGrSpendenViewBetrag: TcxGridDBColumn;
    cxGrSpendenViewBetraginWorten: TcxGridDBColumn;
    cxGrSpendenViewZuwendung: TcxGridDBColumn;
    cxGrSpendenViewQuittung: TcxGridDBColumn;
    procedure cxGrSpendenViewSpendenfallnummerPropertiesButtonClick(
      Sender: TObject; AButtonIndex: Integer);
    procedure cxGrSpendenExit(Sender: TObject);
  private
    { Private-Deklarationen }
    procedure SaveGridPositions;
    procedure RestoreGridPositions;
  public
    { Public-Deklarationen }
  end;

implementation

{$R *.dfm}

uses Modul, Main, Constants, ProjectConstants;

procedure TframeSpenden.cxGrSpendenExit(Sender: TObject);
var x : Integer;
begin
  if Constants.ProgOptions.Common.GridPosition then
    for x := 0 to ComponentCount - 1 do
      if Components[x] is TcxGridDBTableView then
        TcxGridDBTableView(Components[x]).StoreToRegistry(sRegistryPath + '\Custom\Grids\' + Components[x].Name);
end;

procedure TframeSpenden.cxGrSpendenViewSpendenfallnummerPropertiesButtonClick(
  Sender: TObject; AButtonIndex: Integer);
begin
// Suchen einfügen
end;

procedure TframeSpenden.SaveGridPositions;
   var x : Integer;
begin
  if Constants.ProgOptions.Common.GridPosition then
    for x := 0 to ComponentCount - 1 do
      if Components[x] is TcxGridDBTableView then
        TcxGridDBTableView(Components[x]).StoreToRegistry(sRegistryPath + '\Custom\Grids\' + Components[x].Name);
end;

procedure TframeSpenden.RestoreGridPositions;
   var x : Integer;
       GridView : TcxGridDBTableView;
begin
  if Constants.ProgOptions.Common.GridPosition then
    for x := 0 to ComponentCount - 1 do
    begin
      if Components[x] is TcxGridDBTableView then
        TcxGridDBTableView(Components[x]).RestoreFromRegistry(sRegistryPath + '\Custom\Grids\' + Components[x].Name)
    end;
end;

end.
Und hier das Einbinden des Frames im Formular im OnCreate Ereignis.
Delphi-Quellcode:
  if dmMain.ibqryOptionen.FieldByName('SPENDEN').AsString = 'Jthen
  begin
    tshVerein.Caption := 'Spenden';
    tshVerein.Visible := True;
    if not assigned(Spenden)then
    begin
      Spenden := TframeSpenden.Create(PanelVerein);
      Spenden.Parent := PanelVerein;
    end;
    Spenden.BringToFront;
  end;
Beim schließen des Formulars soll auch die Grideinstellung im Frame gespeichert werden.
Walter Landwehr
Mfg

Walter

Geändert von Walter Landwehr (12. Feb 2018 um 14:24 Uhr)
  Mit Zitat antworten Zitat
Walter Landwehr

Registriert seit: 28. Mär 2006
Ort: 32816 Schieder-Schwalenberg
379 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: Frame Grid Eigenschaften speichern

  Alt 13. Feb 2018, 17:53
OK habe es gelöst. Hatte dummerweise die Proceduren im Private und nicht im Public Bereich erstellt.
Walter Landwehr
Mfg

Walter
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 11:33 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