AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Die Delphi-IDE Grid- angeklickte Zeile auf Edit auslesen
Thema durchsuchen
Ansicht
Themen-Optionen

Grid- angeklickte Zeile auf Edit auslesen

Ein Thema von leniii · begonnen am 10. Nov 2017 · letzter Beitrag vom 15. Nov 2017
 
leniii

Registriert seit: 9. Nov 2017
4 Beiträge
 
#9

AW: Grid- angeklickte Zeile auf Edit auslesen

  Alt 15. Nov 2017, 09:07
Jap, gibt Sinn

Also zuerst ist das eine Funktion die ein String trennt. Die brauche ich später.

Delphi-Quellcode:
function splitOutIndex(const Source: String; const Delimiter: String; Index: Integer): String;
var
  Lcount, Lnumber, LSourceLength, LDelLength, LStart, LEnd: Integer;
begin
  Lcount := 1;
  Lnumber := 0;
  if Index = 0 then
    LStart := 1
  else
    LStart := 0;

  LEnd := 0;
  result := '';
  LSourceLength := length(Source);
  LDelLength := length(Delimiter);

  while (Lcount <= LSourceLength) and (LEnd = 0) do
  begin
    if copy(Source, Lcount, LDelLength) = Delimiter then
    begin
      inc(Lnumber);
      if Lnumber >= Index then
      begin
        if LStart = 0 then
          LStart := Lcount + LDelLength
        else
        begin
          LEnd := Lcount;
          result := copy(Source, LStart, LEnd - LStart);
        end;
      end;
      Lcount := Lcount + LDelLength;
    end
    else
      inc(Lcount);
  end;
  if (LStart > 0) and (LEnd = 0) then
    result := copy(Source, LStart, LSourceLength - LStart + 1);
end;
Und das ist jetzt die eigentliche Prozedur, die, wenn ich eine Zeile anklicke, die SELROW der Zeile auf dem Label_releaseDate ausgibt.
Ich hoffe es ist halbwegs verständlich
Delphi-Quellcode:
procedure TUpdatesFr.GridFilesJQGridOptionsCellSelect(Sender: TObject; AParams: TStringList);
var
  s: String;
  i: Integer;
  outcome: TStringList;
  LFound: Boolean;
begin
  LFound := False;
  for i := 0 to AParams.count - 1 do
  begin
    if AParams[i].Contains('_SELROW') then
    begin
      updateversion.Filter:= 'WHERE id =: s';
      updateversion.ParamByName('s').AsString:= splitOutIndex(AParams[i], '=', 1);
      updateversion.Open;
      if updateversion.RecordCount>0 then
      begin
        Label_releaseDate.Text:= updateversion.FieldByName('releasedate').AsString;
      end
      else
      begin
        webApplication.showMessage('Kein Datum gefunden.');
      end;
      LFound := True;
      break;
    end;

  end;
  if not LFound then
    webApplication.ShowMessage('Kein SelRow drin');
end;
  Mit Zitat antworten Zitat
 


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