AGB  ·  Datenschutz  ·  Impressum  







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

StringGridSelectCell Procedure Aufruf-Problem

Ein Thema von Piro · begonnen am 3. Dez 2004 · letzter Beitrag vom 3. Dez 2004
Antwort Antwort
Benutzerbild von Piro
Piro

Registriert seit: 14. Jul 2003
Ort: Flintbek
810 Beiträge
 
Delphi XE2 Professional
 
#1

StringGridSelectCell Procedure Aufruf-Problem

  Alt 3. Dez 2004, 19:40
Moin ich folgende Procedure geschrieben als Ereignis bei einem StringGrid

Delphi-Quellcode:
procedure Tfrm_main.sg_asciiSelectCell(Sender: TObject; ACol,
  ARow: Integer; var CanSelect: Boolean);
var
 zeichen: string;
begin
 with frm_asciizeichen do
 begin
   if not ((ARow = 10) and (ACol > 12)) then
   begin
     zeichen := sg_ascii.Cells[ACol, ARow];
     lbl_asciizeichen.caption := zeichen;
     lbl_dez.Caption := inttostr(Ord(zeichen[1]));
     lbl_hex.Caption := '0x'+DezToX(StrToInt(inttostr(Ord(zeichen[1]))),16);
     top := Mouse.CursorPos.Y;
     Left := Mouse.CursorPos.X + 20;
     Show;
   end;
 end;
end;
Nun möchte ich diese Procedure aus einer anderen Procedure (z.B.: Suchen) aufrufen.
Delphi-Quellcode:
procedure Tfrm_main.btn_sucheClick(Sender: TObject);
var
 i,j:integer;
begin
 for i:=0 to sg_ascii.RowCount-1 do
   for j:=0 to sg_ascii.ColCount - 1 do
     if edt_suche.Text = sg_ascii.Cells[j,i] then
        sg_asciiSelectCell(sg_ascii, j, i, True)
     else
       MessageDlg('Es wurde kein Eintrag gefunden.', mtInformation, [mbOK], 0);
end;
Die Fehlermeldung lautet: Die Typen der tatsächlichen und formalen Var-Parameter müssen übereinstimmen.
Für mich sind die Parameter aber richtig gesetzt. Sieht einer den Fehler?

Danke im voraus.

Sven
  Mit Zitat antworten Zitat
martin-sun

Registriert seit: 11. Aug 2004
Ort: Weinheim
15 Beiträge
 
Delphi 2005 Professional
 
#2

Re: StringGridSelectCell Procedure Aufruf-Problem

  Alt 3. Dez 2004, 20:10
hallo,

es gibt einen kleinen fehler beim aufruf:

sg_asciiSelectCell(sg_ascii, j, i, True)
Delphi-Quellcode:
procedure Tfrm_main.sg_asciiSelectCell(Sender: TObject; ACol,
  ARow: Integer; var CanSelect: Boolean);
in der deklaration ist der letzte parameter(CanSelect) als var deklariert. d.h. dieser parameter wird nicht als wert sondern als adresse übergeben. heißt im klartext, du musst beim aufruf eine boolean-variable übergeben. einfach nur true reicht nicht.
anschließend sollte es funktionieren.

Delphi-Quellcode:
var BoolParam: Boolean;
begin
   ...
   BoolParam := true;
   sg_asciiSelectCell(sg_ascii, j, i, BoolParam);
   ...
hoffe es hilft.
martin
  Mit Zitat antworten Zitat
Benutzerbild von Piro
Piro

Registriert seit: 14. Jul 2003
Ort: Flintbek
810 Beiträge
 
Delphi XE2 Professional
 
#3

Re: StringGridSelectCell Procedure Aufruf-Problem

  Alt 3. Dez 2004, 20:26
Danke. hat geholfen.

Sven
  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 22:24 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