Forum Delphi.cz

Delphi => Obecné => Téma založeno: Jirka 16-10-2021, 22:58:20

Název: Chybné vykreslení ve StringGridu
Přispěvatel: Jirka 16-10-2021, 22:58:20
Narazil jsem zřejmě na chybu v XE2 (D2007  ani 10.4.2 to nedělají).
Na levé straně buňky zůstane asi 2 pixely nevykresleno podkladovou barvou.
Nejlépe je to vidět na přiloženém obrazku
Potřebuji to nějak obejít - přechod na 10.4.2 je až to poslední řešení
DrawGrid nemohu použít  - potřebuji totiž Objects


Kód: Delphi [Vybrat]
  1. procedure TFoPlanSmen.GridHarmongramTxtDrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect;
  2.   State: TGridDrawState);
  3. begin
  4. with TStringGrid(Sender) do
  5.            begin
  6.             Canvas.Brush.Color := clLime ;
  7.             Canvas.FillRect(Rect);
  8.            
  9.           end;
  10. end;
Název: Re:Chybné vykreslení ve StringGridu
Přispěvatel: pf1957 17-10-2021, 07:49:31
Narazil jsem zřejmě na chybu v XE2 (D2007  ani 10.4.2 to nedělají).
Na levé straně buňky zůstane asi 2 pixely nevykresleno podkladovou barvou.
Ty gridy z Delphi jsem pouzil tak davno, ze si o nich vubec nic nepamatuju - jakmile jsme objevilli VTV, tak uz jsme ho pouzivali na vsechno.

Kdyz zahybes s hodnotami v Rect pred FillRect(), tak co se stane?
Název: Re:Chybné vykreslení ve StringGridu
Přispěvatel: Jirka 17-10-2021, 18:13:52
Kdyz zahybes s hodnotami v Rect pred FillRect(), tak co se stane?

Jednoduché a efektivní - viz obrázek
Díky

P.S.  Koukám že to bude chtít přida ještě jeden pixlík