AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Stringgrid oder dbgrid

Ein Thema von Luckner · begonnen am 19. Mär 2015 · letzter Beitrag vom 21. Mär 2015
Antwort Antwort
Perlsau
(Gast)

n/a Beiträge
 
#1

AW: Stringgrid oder dbgrid

  Alt 19. Mär 2015, 22:26
Danke

Das hab ich jetzt verstanden
  Mit Zitat antworten Zitat
Luckner

Registriert seit: 28. Nov 2006
Ort: Berlin
418 Beiträge
 
Delphi 7 Enterprise
 
#2

AW: Stringgrid oder dbgrid

  Alt 21. Mär 2015, 18:43
Hallo Sir Rufo,
das ist genau die Erklärung, die ich versucht habe hier zu bringen. Irgenwie tendiere ich deshalb zum Stringgrid. Aber die Handhabe mit so einem Grid ist mir noch völlig schleierhaft. Habe schon einige Sachen probiert, manche Sachen funktionieren auch. Aber so richtig kann ich mit dem Stringgrid nichts anfangen. Zellen füllen schon. Beim Blob wird schon schwieriger. Jetzt habe ich ein TMS.Grid endeckt. Mal schauen.

Luckner.
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#3

AW: Stringgrid oder dbgrid

  Alt 21. Mär 2015, 18:58
Du kannst jedes beliebige Grid nehmen, aber warum nicht beim DBGrid bleiben? Da wird dir vieles schon abgenommen, was du anders erst wieder umständlich implementieren musst.

Es wäre auch sehr hilfreich, wenn man die Delphi-Version wüsste - ganz findige User tragen die Version einfach in ihr Profil ein, schon hat man das immer vor Augen.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#4

AW: Stringgrid oder dbgrid

  Alt 21. Mär 2015, 19:00
Beim Blob wird schon schwieriger.
Wenn ich in einem DBGrid z.B. eine Grafik darstellen will, muß ich die selber in die gewünschte Zelle zeichnen. Das gilt dann natürlich auch für's StringGrid. Mein Code für's DBGrid sieht folgendermaßen aus:
Delphi-Quellcode:
Procedure TFormDeckblatt.DBGrid_DeckblattDrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState);
Var
  Bild : TImage;
begin
  If DatMod.Qset_Deckblatt.RecordCount > 0 Then
  Begin
    If Column.FieldName = 'BLATTThen
    Begin
      Bild := TImage.Create(Self);
      Try
        Bild.Visible := False;
        Bild.Width := 300;
        Bild.Height := 300;
        Bild.Center := True;
        Bild.Proportional := True;
        Bild.Stretch := True;
        If DatMod.BlobToImage(DatMod.Qset_Deckblatt.FieldByName('BLATT'),Bild) Then
        Begin
          DBGrid_Deckblatt.Canvas.FillRect(Rect);
          DBGrid_Deckblatt.Canvas.StretchDraw(Rect,Bild.Picture.Bitmap);
        End;
      Finally
        Bild.Free;
      End;
    End;
  End;
end;

Function TDatMod.BlobToImage(Feld: TField; Bild: TImage): Boolean;
Var
  S : TStream;
  JBild : TJpegImage;
begin
  Result := False;
  IF Feld.IsNull THEN Exit;

  JBild := TJPegImage.Create;
  S := Feld.DataSet.CreateBlobStream(Feld, bmRead);
  Try
    JBild.LoadFromStream(S);
    Bild.Picture.Bitmap.Assign(JBild);
    Result := True;
  Finally
    S.Free;
    JBild.Free;
   End;
end;
Angehängte Grafiken
Dateityp: jpg DBGrid_DrawColumnCell.jpg (20,5 KB, 25x aufgerufen)

Geändert von Perlsau (21. Mär 2015 um 19:03 Uhr)
  Mit Zitat antworten Zitat
Luckner

Registriert seit: 28. Nov 2006
Ort: Berlin
418 Beiträge
 
Delphi 7 Enterprise
 
#5

AW: Stringgrid oder dbgrid

  Alt 21. Mär 2015, 19:34
Sir Rufo,
habe mein Prtofil jetzt ergänzt. Werde mir ende des Monats eine Delphi XE7 Pro-version kaufen, wobei mitten drin in der Programmierung umzusteigen wird nicht funktionieren. Aber ein neues Projekt möglicherweise.
Welchen Vorteil bring ein clientdataset? Ich benutze eigentlich imme ein IBDataset
Luckner.
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#6

AW: Stringgrid oder dbgrid

  Alt 21. Mär 2015, 19:42
Ein ClientDataSet sammelt z.B. alle Änderungen bis du diese wieder zurück zur Datenbank überträgst. Macht also genau das was du suchst.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Antwort Antwort


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