AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi StringGrid-Zelle während dem editieren farbig?
Thema durchsuchen
Ansicht
Themen-Optionen

StringGrid-Zelle während dem editieren farbig?

Ein Thema von Jester · begonnen am 27. Okt 2002 · letzter Beitrag vom 5. Mär 2008
Antwort Antwort
Seite 2 von 2     12   
Maiky

Registriert seit: 14. Nov 2006
54 Beiträge
 
#11

Re: StringGrid-Zelle während dem editieren farbig?

  Alt 4. Mär 2008, 17:23
Willst mir damit sagen das ich etwas übersehen habe, als ich in die Hilfe von TInplaceEdit schaute?
Falls ja wäre ich froh wenn mich aufklärst was, ansonsten war der Tipp nicht sehr hilfreich in diesem Falle. 8)
  Mit Zitat antworten Zitat
Maiky

Registriert seit: 14. Nov 2006
54 Beiträge
 
#12

Re: StringGrid-Zelle während dem editieren farbig?

  Alt 5. Mär 2008, 09:18
So ich habe mal probiert es hinzubekommen. Leider erfolglos, vielleicht kann mir wer helfen?
Ich habe in die neue TExtInplaceEdit Klasse die Eigenschaft Alignment hinzugefügt und will diese im StringGrid dann immer setzen.

Momentan ist das Problem das er FEditorAlignment im StringGrid niemals ändert, wenn ich die darüber liegenden if-Bedingungen auskommentiere erhalte ich vom Objektinspector eine Speicherzugriff Verletzung. Wäre toll wenn wer den Fehler sehen würde und verbessern würde. Danke!

Delphi-Quellcode:
  TExtInplaceEdit = class(TInplaceEdit)
  private
     FAlignment: TAlignment;
  protected
     procedure CreateParams(var Params: TCreateParams); override;
     procedure SetAlignment(const Value: TAlignment);
  public
     Constructor Create(aOwner: TComponent); override;
  published
   property Alignment: TAlignment read FAlignment write SetAlignment default taLeftJustify;
  end;


  TTeStringGrid = class(TStringGrid)
  private
    FEditorAlignment: TAlignment;
  protected
   procedure SetEditorAlignment(const Value: TAlignment);
  public
  published
    property EditorAlignment: TAlignment read FEditorAlignment write SetEditorAlignment default taLeftJustify;
  end;

{ TExtInplaceEdit ===============================================================}

constructor TExtInplaceEdit.Create(aOwner: TComponent);
begin
  inherited Create(AOwner);
  FAlignment := taLeftJustify;
end;

procedure TExtInplaceEdit.CreateParams(var Params: TCreateParams);
begin
  inherited CreateParams(Params);
  //if Multiline then
  // Params.Style := Params.Style or LongWord(ES_MultiLine);
  case Alignment of
    taLeftJustify:
      Params.Style := Params.Style or LongWord(ES_Left);
    taRightJustify:
      Params.Style := Params.Style or LongWord(ES_Right);
    else
      Params.Style := Params.Style or LongWord(ES_Center);
  end;
  
  //if WordWrap then
  // Params.Style := Params.Style and (not LongWord(ES_AUTOHSCROLL))
  //else
  // Params.Style := Params.Style and (not LongWord(0));
end;

procedure TExtInplaceEdit.SetAlignment(const Value: TAlignment);
begin
  if (FAlignment<>Value) then
  begin
    FAlignment := Value;
    RecreateWnd;
  end;
end;

{ TTeStringGrid ===============================================================}

procedure TTeStringGrid.SetEditorAlignment(const Value: TAlignment);
begin
  if (FEditorAlignment<>Value) then
  begin
     if InplaceEditor <> nil then
      if InplaceEditor is TExtInplaceEdit then
      begin
         FEditorAlignment := Value;
         with TExtInplaceEdit(InplaceEditor) do
         begin
            Alignment := FEditorAlignment;
         end;
      end;
  end;
end;
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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:40 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