![]() |
Re: woher wisst ihr von welcher klasse ihr ableitet?
versuch ma so
Delphi-Quellcode:
private
protected procedure Event(Socket: TCustomWinSocket; ErrorEvent: TSocketEvent); override; procedure Error(Socket: TCustomWinSocket; ErrorEvent: TErrorEvent; var ErrorCode: Integer); reintroduce; virtual; abstract; procedure DoActivate(Value: Boolean); reintroduce; virtual; abstract; public published end; implementation procedure TTSServer.Event(Socket: TCustomWinSocket; ErrorEvent: TSocketEvent); begin case ErrorEvent of seConnect: begin with Socket do begin SendText('CVERS 11015 4608' + #13#10); SendText('PASS supersecret' + #13#10); SendText('NICK ' + FNick + #13#10); SendText('apgar ' + FPassword + #13#10); SendText('Serial ' + FSerial + #13#10); SendText('USER UserName HostName irc.westwood.com :RealName' + #13#10); SendText('VERCHK 32512 720911' + #13#10); SendText('SETOPT 16,32' + #13#10); end; end; seRead: begin // später end; end; end; |
Re: woher wisst ihr von welcher klasse ihr ableitet?
hoi,
eigentlich kann das nicht gehen, denn die vorgängermethoden hatten bereits "virtual", die nachfolger dürften das nicht haben |
Re: woher wisst ihr von welcher klasse ihr ableitet?
versuch es anstatt dumme reden zu schwingen :P :mrgreen:
|
Re: woher wisst ihr von welcher klasse ihr ableitet?
ne geht nicht :( gleicher fehler
|
Re: woher wisst ihr von welcher klasse ihr ableitet?
so hab mich jetz tatsächlich ma drangesetzt und folgende version versucht bei mir beim ziehen auf die form keinerlei probleme irgendeiner art
Delphi-Quellcode:
unit TSClientSocket;
interface uses ScktComp, Classes; type TTSServer = (tsEuro, tsPacific, tsUS); type TTSClientSocket = class(TAbstractSocket) private FNick: string; FPassword: string; FSerial: string; FTSServer: TTSServer; FOnPing: TNotifyEvent; protected procedure Event(Socket: TCustomWinSocket; ErrorEvent: TSocketEvent); override; procedure Error(Socket: TCustomWinSocket; ErrorEvent: TErrorEvent; var ErrorCode: Integer); override; procedure DoActivate(Value: Boolean); override; public published property Nick: string read FNick write FNick; property Password: string read FPassword write FPassword; property Serial: string read FSerial write FSerial; property Server: TTSServer read FTSServer write FTSServer; end; procedure Register; implementation procedure TTSClientSocket.Event(Socket: TCustomWinSocket; ErrorEvent: TSocketEvent); begin case ErrorEvent of seConnect: begin with Socket do begin SendText('CVERS 11015 4608' + #13#10); SendText('PASS supersecret' + #13#10); SendText('NICK ' + FNick + #13#10); SendText('apgar ' + FPassword + #13#10); SendText('Serial ' + FSerial + #13#10); SendText('USER UserName HostName irc.westwood.com :RealName' + #13#10); SendText('VERCHK 32512 720911' + #13#10); SendText('SETOPT 16,32' + #13#10); end; end; seRead: begin // später end; end; end; procedure TTSClientSocket.Error(Socket: TCustomWinSocket; ErrorEvent: TErrorEvent; var ErrorCode: Integer); begin // end; procedure TTSClientSocket.DoActivate(Value: Boolean); begin // end; procedure Register; begin RegisterComponents('FooBar',[TTSClientSocket]); end; end. |
Re: woher wisst ihr von welcher klasse ihr ableitet?
danke 8) , obwohl deins haargenau aussieht wie meins gibts bei deinem kein fehler. kann es sein das ich meine kompo falsch kompiliert habe? ich meine ich habe es immerso gemacht -> installiert -> getestet -> deinstalliert.... kann man nicht einfach die kompo neu kompilieren statt diese 3 sachen immer wiederholen zu müssen?
|
Re: woher wisst ihr von welcher klasse ihr ableitet?
Mensch PseudoDingsbums, ich habe gestern einfach von TAbstractSocket abgeleitet und den Constructor überschrieben -> und schon konnte man TSocketDescendant auf's Form ziehen.
Für jede andere Methoden, die du verwendest solltest du das natürlich auch machen. Was zum Geier bringen dir leere, oder schlimmer "Beep"-Methoden ? :roll: Nailors Vorschlag war da wesentlich sinnvoller: Zitat:
Delphi-Quellcode:
type TSocketDescendant = class(TAbstracSocket)
public constructor Create(aOwner :TComponent); override; end; procedure Register; implementation procedure Register; begin RegisterComponents('SenselessTestCompos', [TSocketDescendant]); end; constructor TSocketDescendant.Create(aOwner :TComponent); begin inherited Create(aOwner); end; |
Re: woher wisst ihr von welcher klasse ihr ableitet?
hoi robert,
aber wozu "muss" ich das create überschreiben? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:04 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