Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Integerfeld-Refactoring (https://www.delphipraxis.net/199620-integerfeld-refactoring.html)

Delbor 6. Feb 2019 14:23

Delphi-Version: 5

Integerfeld-Refactoring
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hi zusammen

Ich will erfahren, wie gross ein Bild ist, das mir meine Twain-Engine zurückliefert. Folgende Prozedur wird aufgerufen, wenn der Scanvorgang beendet wird:
Delphi-Quellcode:
procedure TScanningFrame.TwainTwainAcquire(Sender: TObject; const Index: Integer;
  Image: TBitmap; var Cancel: Boolean);
begin
  FWidth := Image.Width;
  FHeight := Image.Height;;
FWith und FHeight habe ich nicht deklariert, bevor ich sie hingeschrieben hatte, sondern wollte/habe sie mir via Refactoring deklarieren lassen.
Aber gleichzeitig gab mir Delphi eine Warnung aus:
Anhang 50649
Was soll das?

Gruss
Delbor

hoika 6. Feb 2019 16:12

AW: Integerfeld-Refactoring
 
Hallo,
Zitat:

via Refactoring deklarieren lassen
Wie hast Du dann das hinbekommen, durch welche Refactoring-Methode?
Gibt es die Variablen vielleicht schon in TScanningFrame?

Uwe Raabe 6. Feb 2019 16:21

AW: Integerfeld-Refactoring
 
Zitat:

Zitat von hoika (Beitrag 1424876)
Wie hast Du dann das hinbekommen, durch welche Refactoring-Methode?

Ich vermute mal "Feld einführen..."?

Delbor 6. Feb 2019 16:32

AW: Integerfeld-Refactoring
 
Hi Hoika
Zitat:

Zitat von hoika (Beitrag 1424876)
Wie hast Du dann das hinbekommen, durch welche Refactoring-Methode?
Gibt es die Variablen vielleicht schon in TScanningFrame?

Nein. Der aktuelle Stand:
Delphi-Quellcode:
type
  TScanningFrame = class(TFrame)
    PnlTop: TPanel;
    BtnScanWithDialog: TButton;
    BtnScanWithoutDialog: TButton;
...(Einige weitere Drag&Drop Komponenten)
    procedure BtnScanWithDialogClick(Sender: TObject);
    procedure BtnReloadSourcesClick(Sender: TObject);
    procedure RadioGroup1Click(Sender: TObject);
  private
    { Private-Deklarationen }
    Twain: TDelphiTwain;
    FOnFinishedBmpScanEvent : TFinishedBmpScanEvent;

    FTargetExtension: string;
    FWidth: Integer;
    FHeight: Integer;

    procedure ReloadSources;
    procedure TwainTwainAcquire(Sender: TObject; const Index: Integer;
      Image: TBitmap; var Cancel: Boolean);

  protected

  public
    { Public-Deklarationen }
    procedure InitTargetExtension;
    constructor Create(AOwner: TComponent); override;
    destructor Destroy; override;
    property OnFinishedBmpScanEvent : TFinishedBmpScanEvent read FOnFinishedBmpScanEvent write FOnFinishedBmpScanEvent;
  end;
Eingefügt wuurden die Felder trotz der Warnungen.


Gruss
Delbor

hoika 6. Feb 2019 17:18

AW: Integerfeld-Refactoring
 
Hallo,
wenn es jetzt compiliert, wird es ein kleiner Fehler bei der Vorprüfung des Refactorings sein.

Da du gerade beim Twain bist.
Von welchem Jahr ist Deine Komponente?
Meine wurde leider ab 2004 nicht mehr weiterentwickelt,
weil der Programmierer (Gustavo Daud und Nemeth Peter) es leid war, die Bugs vieler Twain-Treiber zum umschiffen.

Delbor 6. Feb 2019 17:53

AW: Integerfeld-Refactoring
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hi hoika

Ich habe hier mehrere, aber wenn mich nicht alles täuscht, müsste dass diese sein:
Anhang 50650
Die Datei hat in meinem J-Download-Ordner* als Änderungsdatum den 21.3.2018, müsste also recht aktuell sein, auch wenn das laut Dateiname auch schon wieder fünf Jahre - eine halbe Computerewigkeit - her sind.

Ach ja, bevor ichs vergesse: das ist keine Komponente mehr.

Zitat:

wenn es jetzt compiliert, wird es ein kleiner Fehler bei der Vorprüfung des Refactorings sein.
Kompilieren tuts ohne Probleme. Das heisst also, dassich die Warnungen ignorieren odr sogar löschen kann?

Gruss
Delbor

* Auf C:\ landet bei mir grundsätzlich nur nichts, es sei denn, Programme fragen mich gar nicht...


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:09 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