AGB  ·  Datenschutz  ·  Impressum  







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

Actions in einer anderen Unit definieren

Ein Thema von Int3g3r · begonnen am 21. Dez 2018 · letzter Beitrag vom 16. Jan 2019
Antwort Antwort
Int3g3r

Registriert seit: 28. Nov 2018
Ort: Schweiz
118 Beiträge
 
Delphi 10.3 Rio
 
#1

AW: Actions in einer anderen Unit definieren

  Alt 21. Dez 2018, 13:06
Das ist klar:

Actions sind vom Typ TAction.

Du hast nun auch noch ein Datenmodul erstellt, dass ebenfalls vom Typ TAction ist.

Aber: TAction <> TAction

Beim Erstellen von Datenmodulen ... solltest Du darauf achten, dass Du keinen Typen verwendest den es in anderem Kontext schon gibt.

Du hast doch schon ein dmod_prg in 'dmod_prg.pas{dm: TDataModule} , warum dann nicht statt Actions in 'Actions.pas{Action: TDataModule}; einfach dmActions in 'dmActions.pas{dmActions: TDataModule} ?
Besten Dank!
  Mit Zitat antworten Zitat
Int3g3r

Registriert seit: 28. Nov 2018
Ort: Schweiz
118 Beiträge
 
Delphi 10.3 Rio
 
#2

AW: Actions in einer anderen Unit definieren

  Alt 21. Dez 2018, 13:34
Ich habe nun das Datenmodul eingebunden.
Von einem anderen Formular aus kann ich nun mit dem Befehl:
ac.dmOpenAll; die Datenbanken öffen.

Ich möchte aber nicht einen Befehl im Quelltext ausführen sondern mit dem Objektinspektor verknüpfen.
Siehe Bild (Rot = so möchte ich die Action eingetragen).

Ist dies überhaupt möglich ?
Angehängte Grafiken
Dateityp: jpg action.jpg (77,2 KB, 20x aufgerufen)
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.558 Beiträge
 
Delphi 7 Professional
 
#3

AW: Actions in einer anderen Unit definieren

  Alt 21. Dez 2018, 13:42
Steht das Datenmodule im Uses der frmMain?

Wenn nein, bitte dort eintragen.

Im Objektinspektor bitte eingeben:

Datenmodulname.ActionnameExecute

also in etwa ac.dmOpenAllExecute

Eigentlich sollte der Objektinspektor aber beim Klick auf den Pfeil rechts eine Liste mit alle dem anzeigen, was dem Ereignis zugewiesen werden kann.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.652 Beiträge
 
Delphi 12 Athens
 
#4

AW: Actions in einer anderen Unit definieren

  Alt 21. Dez 2018, 13:49
Eigentlich sollte der Objektinspektor aber beim Klick auf den Pfeil rechts eine Liste mit alle dem anzeigen, was dem Ereignis zugewiesen werden kann.
Dazu muss das Datenmodul in der uses-Anweisung stehen und im Designer geöffnet sein.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Int3g3r

Registriert seit: 28. Nov 2018
Ort: Schweiz
118 Beiträge
 
Delphi 10.3 Rio
 
#5

AW: Actions in einer anderen Unit definieren

  Alt 21. Dez 2018, 13:55
Steht das Datenmodule im Uses der frmMain?

Wenn nein, bitte dort eintragen.

Im Objektinspektor bitte eingeben:

Datenmodulname.ActionnameExecute

also in etwa ac.dmOpenAllExecute

Eigentlich sollte der Objektinspektor aber beim Klick auf den Pfeil rechts eine Liste mit alle dem anzeigen, was dem Ereignis zugewiesen werden kann.
A) Was ist der unterschied zwischen der Uses am Anfang, und der Uses bei der Implementation ? Ich habe es bei der Uses am Anfang eingetragen.

B) Designer ? Also einfach in der Delphi IDE muss die Unit geöffnet sein richtig ? Diese ist geöffnet.

Wie gesagt im Code kann ich ac.dmOpenAllExecute verwenden doch beim Objektinspektor wird mir diese Action im Dropdown-Menü nicht angezeigt.


Code:
unit main;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
   Vcl.Controls, Vcl.Forms, Vcl.Dialogs, dmActions;

type
  TfrmMain = class(TForm)
   private
      { Private-Deklarationen }
  public
      { Public-Deklarationen }
  end;

var
   frmMain: TfrmMain;

implementation

{$R *.dfm}


end.
  Mit Zitat antworten Zitat
jsp

Registriert seit: 9. Aug 2003
50 Beiträge
 
#6

AW: Actions in einer anderen Unit definieren

  Alt 21. Dez 2018, 14:00
http://wiki.freepascal.org/IDE_Window:_New_Item

Und da Data Module wählen.

Jörn
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.558 Beiträge
 
Delphi 7 Professional
 
#7

AW: Actions in einer anderen Unit definieren

  Alt 21. Dez 2018, 14:13
Datenmodul mit Taste F12 anzeigen lassen.

Zum frmMain wechseln und mit Taste F12 anzeigen lassen.
Im Objektinspektor zum gewünschten Ereignis gehen und passende Routine auswählen.

Wird nix angezeigt, einfach das gewünschte reinschreiben.

Eventuell muss man einmal kompilieren, damit Delphi die Anhängigkeiten mitkriegt. (Zumindest bei meinem ollen Delphi 7 ist das (manchmal) so.)
  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 18:52 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