Ich wünsche mir, dass dieser Code irgendwann funktioniert:
type
TPoint = record
X,
Y: Integer;
end;
TMyType = record
ID: Integer;
Pos: TPoint;
end;
const
ZeroP: TPoint = (X: 0; Y: 0);
DefaultMyType: TMyType = (ID: 54631; Pos: ZeroP);
Bisher musste ich für die letzte Zeile immer ...
Die Suche ergab 40 Treffer
- Mi 11. Nov 2015, 17:18
- Forum: Dies und Das
- Thema: Was wünscht ihr euch für Pascal Features in der Zukunft
- Antworten: 108
- Zugriffe: 37830
- Mi 22. Jul 2015, 15:40
- Forum: Freepascal
- Thema: Vererbung / generische Interfaces
- Antworten: 1
- Zugriffe: 1750
Vererbung / generische Interfaces
Moin alle zusammen,
Ich habe eine generische Klasse TSmartArray, die ein (ebenso generisches) Interface IList implementiert.
Nun habe ich eine Prozedur, deren Signatur einen Parameter vom Typ IList<QWord> definiert. Ich kann dieser Prozedur aber keinen Parameter vom Typ TSmartArray<QWord> übergeben ...
Ich habe eine generische Klasse TSmartArray, die ein (ebenso generisches) Interface IList implementiert.
Nun habe ich eine Prozedur, deren Signatur einen Parameter vom Typ IList<QWord> definiert. Ich kann dieser Prozedur aber keinen Parameter vom Typ TSmartArray<QWord> übergeben ...
- So 14. Dez 2014, 13:17
- Forum: Netzwerk
- Thema: Registrierung?!
- Antworten: 38
- Zugriffe: 20867
Re: Registrierung?!
Registrierungen machst du mit der folgenden Funktion:
Die erledigt alles vollautomatisch. Ganz egal, welche Art von Registrierung du meinst, die kann alles. 
Code: Alles auswählen
uses Fantasy;
function Registrate(Registrant: IRegistrable): QWord;

- Do 27. Nov 2014, 15:02
- Forum: Sonstiges
- Thema: Probleme mit code unter 64bit cpu
- Antworten: 14
- Zugriffe: 7574
Re: Probleme mit code unter 64bit cpu
Den brauchst du ja wahrscheinlich für größere Dateien ohnehin.
Würde ich nicht unbedingt sagen. Er unterteilt ja einen FileStream (der ja auch mit sehr großen Dateien umgehen kann) in Chunks von 64 KiB Größe, für die Cardinal locker ausreicht, kombiniert mit Repeat-Until. Wenn das unter 32 Bit ...
Würde ich nicht unbedingt sagen. Er unterteilt ja einen FileStream (der ja auch mit sehr großen Dateien umgehen kann) in Chunks von 64 KiB Größe, für die Cardinal locker ausreicht, kombiniert mit Repeat-Until. Wenn das unter 32 Bit ...
- Mi 22. Okt 2014, 00:38
- Forum: Komponenten und Packages
- Thema: TApplicationProperties --> Idle
- Antworten: 3
- Zugriffe: 2399
Re: TApplicationProperties --> Idle
Du kannst mit OnIdle eher keine Tasten abfragen, aber dafür Game-Loops erstellen:
interface
type
TForm = class
…
procedure AppOnIdle(Sender:TObject; var Done: Boolean);
end;
implementation
procedure TForm1.OnCreate(Sender);
begin
…
Application.OnIdle := @AppOnIdle;
end;
procedure TForm1 ...
interface
type
TForm = class
…
procedure AppOnIdle(Sender:TObject; var Done: Boolean);
end;
implementation
procedure TForm1.OnCreate(Sender);
begin
…
Application.OnIdle := @AppOnIdle;
end;
procedure TForm1 ...
- Do 25. Sep 2014, 17:49
- Forum: Vorstellungen
- Thema: Hey Ho
- Antworten: 4
- Zugriffe: 13384
Re: Hey Ho
Hey ho,
Willkommen im Forum! Bin übrigens ein Jahr älter als du und habe auch laange lange Zeit D7 genutzt.
Willkommen im Forum! Bin übrigens ein Jahr älter als du und habe auch laange lange Zeit D7 genutzt.
- Di 9. Sep 2014, 16:14
- Forum: MacOS
- Thema: Funktioniert "Canvas.Pixels[x,y]" unter MacOSX nicht?
- Antworten: 16
- Zugriffe: 28025
Re: Funktioniert "Canvas.Pixels[x,y]" unter MacOSX nicht?
Welchen Fehler wirft denn SetSize bei dir? Und warum benutzt du Screen.Size, wäre deine Zeichenfläche vielleicht sinnvoller mit Form.Width&Height angegeben?
Ich mach das immer folgendermaßen: In OnCreate erstelle ich das Bitmap lediglich, das Setzen der Größe mach ich nur in OnResize.
Denn ich bin ...
Ich mach das immer folgendermaßen: In OnCreate erstelle ich das Bitmap lediglich, das Setzen der Größe mach ich nur in OnResize.
Denn ich bin ...
- Mo 8. Sep 2014, 00:15
- Forum: MacOS
- Thema: Funktioniert "Canvas.Pixels[x,y]" unter MacOSX nicht?
- Antworten: 16
- Zugriffe: 28025
Re: Funktioniert "Canvas.Pixels[x,y]" unter MacOSX nicht?
Zeichne doch alles was du zeichnen musst erstmal in einen Bitmap-Puffer, den du in OnPaint nur auf die Form zeichnest.
Dort dürfte die Abfrage von Farbwerten nämlich funktionieren.
var
Buffer: TBitmap;
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X ...
Dort dürfte die Abfrage von Farbwerten nämlich funktionieren.
var
Buffer: TBitmap;
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X ...
- Mo 1. Sep 2014, 19:31
- Forum: Multimedia
- Thema: Drehendes Objekt
- Antworten: 12
- Zugriffe: 7997
Re: Drehendes Objekt
Wenn es nicht kompliziert sein soll, kannst du ja eine Fläche zum Selberzeichnen wählen und mit dem Canvas-Objekt Linien zeichnen (mit Seitenberechnung vom Winkel á la x=cos, y=sin), die die Richtung anzeigen.
„Drehendes grafisches Objekt“ klingt zwar doch fast nach OpenGL, Canvas ist aber für die ...
„Drehendes grafisches Objekt“ klingt zwar doch fast nach OpenGL, Canvas ist aber für die ...
- Fr 15. Aug 2014, 19:03
- Forum: Freepascal
- Thema: Enumerator von generischer Klasse?
- Antworten: 2
- Zugriffe: 2247
Re: Enumerator von generischer Klasse?
Dankeschön, die Unit beschreibt einen schönen Weg, um das hinzubekommen, hab es dadurch lösen können!
Der ungefähre Code sieht jetzt so aus:
TAbstractSmartArray = class
public
{ Gibt einen Zeiger auf Element I zurück, falls vorhanden, sonst nil }
function GetElemPtr(I: SizeInt): Pointer ...
Der ungefähre Code sieht jetzt so aus:
TAbstractSmartArray = class
public
{ Gibt einen Zeiger auf Element I zurück, falls vorhanden, sonst nil }
function GetElemPtr(I: SizeInt): Pointer ...
- Mi 13. Aug 2014, 00:16
- Forum: Freepascal
- Thema: Enumerator von generischer Klasse?
- Antworten: 2
- Zugriffe: 2247
Enumerator von generischer Klasse?
Hallo alle zusammen!
Ich habe eine generische Klasse TSmartArray, die ich in einer for-in-loop ansprechen können möchte. Wie definiere ich einen Enumerator dafür?
Mein Problem ist, dass man eine Im-Voraus-Deklaration benutzen muss, die bei Generischen Typen nicht geht oder anders aussieht. Das ...
Ich habe eine generische Klasse TSmartArray, die ich in einer for-in-loop ansprechen können möchte. Wie definiere ich einen Enumerator dafür?
Mein Problem ist, dass man eine Im-Voraus-Deklaration benutzen muss, die bei Generischen Typen nicht geht oder anders aussieht. Das ...
- Fr 13. Jun 2014, 00:04
- Forum: Einsteigerfragen
- Thema: 2 Tasten zur selben Zeit drücken?
- Antworten: 11
- Zugriffe: 4570
Re: 2 Tasten zur selben Zeit drücken?
Hätte vielleicht vorher nach deinem Kenntnisstand fragen können ^^
FormKeyDown wird aufgerufen, wenn eine Taste gedrückt wird, FormKeyUp, wenn eine losgelassen wird. Du kannst dir in diesen Methoden die Informationen über gedrückte Tasten in Variablen speichern, so dass du darauf auch außerhalb ...
FormKeyDown wird aufgerufen, wenn eine Taste gedrückt wird, FormKeyUp, wenn eine losgelassen wird. Du kannst dir in diesen Methoden die Informationen über gedrückte Tasten in Variablen speichern, so dass du darauf auch außerhalb ...
- Do 12. Jun 2014, 15:09
- Forum: Einsteigerfragen
- Thema: 2 Tasten zur selben Zeit drücken?
- Antworten: 11
- Zugriffe: 4570
Re: 2 Tasten zur selben Zeit drücken?
Die Meldung, dass Shift nicht verwendet wird, ist genau dann normal, wenn man Shift auch wirklich nicht benutzt ;)
Die Meldung, dass KeyDown eine vererbte Methode verbirgt, habe ich aber nie, prüfe doch mal, ob deine Methode überhaupt aufgerufen wird, indem du einfach bei jedem Tastendruck
WriteLn ...
Die Meldung, dass KeyDown eine vererbte Methode verbirgt, habe ich aber nie, prüfe doch mal, ob deine Methode überhaupt aufgerufen wird, indem du einfach bei jedem Tastendruck
WriteLn ...
- Mi 23. Apr 2014, 00:41
- Forum: Vorstellungen
- Thema: Das bin ich
- Antworten: 21
- Zugriffe: 20270
Re: Das bin ich
Aber warum tut das jemand? ^^Nee, Maria73 stinkt.
- Sa 8. Mär 2014, 17:38
- Forum: Benutzung der IDE
- Thema: [Selbst gelöst] Upgrade zu Lazarus 1.2
- Antworten: 1
- Zugriffe: 3055
Re: Upgrade zu Lazarus 1.2?
Nach einer einfachen Neuinstallation ging es noch nicht, dafür aber nach der Neuinstallation und dem Löschen des Ordners ~/.lazarus. Hätt ich auch früher drauf kommen können.