Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Komponente geht nicht (https://www.delphipraxis.net/82803-komponente-geht-nicht.html)

mkinzler 20. Dez 2006 15:38

Re: Komponente geht nicht
 
Die Property heißt auch shutdown_

I.A. 20. Dez 2006 15:39

Re: Komponente geht nicht
 
Sie ist aber trotzdem unterstrichen.



\\Edit
Delphi-Quellcode:
unit shutdown;

interface

uses
  SysUtils, Classes, shellapi, Forms, Windows;

type
  Tshutdown = class(TComponent)
  private
    { Private-Deklarationen }
    out: Boolean;
    down: Boolean;
    re: Boolean;
    kill: Boolean;


  protected
    { Protected-Deklarationen }
  public
    { Public-Deklarationen }
    function shutdown: Boolean;
    function logout: Boolean;
    function restart: Boolean;
    function killtask : Boolean;

  published
    { Published-Deklarationen }
    property shutdown_ : Boolean Read down write down;
    property restart_ : Boolean Read re write re;
    property logout_ : Boolean Read out write out;
    property killtask_ : Boolean Read kill write kill;
  end;

procedure Register;

implementation

procedure Register;
begin
  RegisterComponents('Samples', [Tshutdown]);
end;

function Tshutdown.shutdown:Boolean;
begin
  if shutdown_= true then
  begin
  ShellExecute(Application.Handle, 'open', 'cmd', 'shutdown -s', nil, SW_Shownormal);
  end
  else
  shutdown_ := false;
end;

function Tshutdown.logout:Boolean;
begin
  if logout_= true then
  begin
  ShellExecute(Application.Handle, 'open', 'cmd', 'shutdown -l', nil, SW_Shownormal);
  end
  else
  logout_ := false;
end;

function Tshutdown.restart:Boolean;
begin
  if restart_= true then
  begin
  ShellExecute(Application.Handle, 'open', 'cmd', 'shutdown -r', nil, SW_Shownormal);
  end
  else
  restart_ := false;
end;


function Tshutdown.killtask:Boolean;
begin
  if killtask_= true then
  begin
  ShellExecute(Application.Handle, 'open', 'cmd', 'shutdown -f', nil, SW_Shownormal);
  end
  else
  killtask_ := false;

end;

end.
[edit=MrSpock]Delphi-Code tags eingefügt. Mfg, MrSpock[/edit]

mkinzler 20. Dez 2006 15:43

Re: Komponente geht nicht
 
Zeig mal den Code der Unit, bzw hänge diese an deinen Beitrag

Neutral General 20. Dez 2006 15:53

Re: Komponente geht nicht
 
Shutdown is auch ne Funktion... dh du rufst einfach nur

Delphi-Quellcode:
DeineKlasse.Shutdown_;
auf und dann wird das ausgeführt.. du kannst funktionen nix zuweisen ;)

Gruß
Neutral General

hoika 20. Dez 2006 16:06

Re: Komponente geht nicht
 
OH = Online Hilfe

F1


Heiko

I.A. 22. Dez 2006 10:48

Re: Komponente geht nicht
 
Ich will aber haben das ich dem Befehl z.B. "shutdown" den Wert true oder false zuweisen kann.

hoika 28. Dez 2006 08:16

Re: Komponente geht nicht
 
Hallo #,

du kannst nur properties Werte zuweisen.

ausserdem solltest du dich an die Delphi-Konventionen halten.

Delphi-Quellcode:
procedure SetShutDown(theValue: Boolean);
begin
  if theValue then
  begin
    DoInternalShutDown; // DoInternalShutDown enthält den shutdown code
  end;
end;

property ShutDown: Boolean
  write SetShutDown; // read ist sinnlos
Heiko

I.A. 1. Jan 2007 19:10

Re: Komponente geht nicht
 
Danke dir Vielmals


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:17 Uhr.
Seite 3 von 3     123   

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