CellValue := TStringGrid(DBGridAlarm).Cells[1,1]; går galt under runtime med Acces Violation, hvorfor er det ikke muligt at læse den enkelte værdi i et DBGrid ?
Eller endnu bedre hvem har en løsning på problemet ?
Du skal teste på dit felt i DB!(BookTbBetalt.value=true)
procedure TForm1.DBGrid3DrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); Var Bfarve: Tcolor; Str : String; OldFont : TFont; begin with (Sender as TDBGrid).Canvas do begin OldFont:=Font; if gdFocused in State then begin Bfarve:=clNavy; Font.Color:=clWhite; end else begin if BookTbBetalt.value=true then Bfarve:=$00C5FD79 else Bfarve:=$00C7EEF3; Font.Color:=clBlack; end; DBGrid3.Canvas.Brush.Color:=Bfarve; DBGrid3.Canvas.Fillrect(Rect); DBGrid3.Canvas.Textout(Rect.Left+5,Rect.Top+2,Str); Font:=OldFont; DBGrid3.DefaultDrawDataCell(Rect,Column.Field,State); end; end;
begin with (Sender as TDBGrid).Canvas do begin OldFont:=Font; if gdFocused in State then begin Bfarve:=clNavy; Font.Color:=clWhite; end else begin if DataSourceAl.DataSet.FieldByName(\'AlType\').AsInteger = 12 then begin BFarve := clWhite; Font.Color:=clRed; end else Bfarve:=clWhite; Font.Color:=clBlack; end; DBGridAlarm.Canvas.Brush.Color:=Bfarve; DBGridAlarm.Canvas.Fillrect(Rect); DBGridAlarm.Canvas.Textout(Rect.Left+5,Rect.Top+2,Str); Font:=OldFont; DBGridAlarm.DefaultDrawDataCell(Rect,Column.Field,State); end;
Og som du kan se er det tekst farven jeg vil skifte istedet for baggrundsfarven, det virker imidlertid ikke ???
Mit problem nr 2: Når jeg holder kontrol tasten nede vil jeg gerne kunne mærke nogle felter op med musen, det har jeg kunnet tidligere med en blå række hele vejen igennem på dem jeg trykker på, nu er det kun den sidste række som jeg trykker på der bliver blå, og kun det første felt i rækken ???
alt er sat til true bortset fra dgEditing og dgAlwaysShowEditor.
Men jeg har brøvet og sætte et breakpoint i if gdFocused in State then begin Bfarve:=clNavy; Font.Color:=clWhite; end Og jeg kan se at den aldrig kommer ind i dette kode ?
Giver den sidst mørkede række = blå, når Ctrl tasten holdes nede samtidigt med at der klikkes med musen ?
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.