FPC 2.6 und WinGraph

Für Fragen zur Programmiersprache auf welcher Lazarus aufbaut
Antworten
Benutzeravatar
Roland Chastain
Beiträge: 169
Registriert: Sa 7. Jul 2012, 21:50
Wohnort: Saargemünd
Kontaktdaten:

FPC 2.6 und WinGraph

Beitrag von Roland Chastain »

Hallo !

ich bin neu und das ist mein erst Beitrag hier. Ich bitte Entschuldigung für meine Sprache, denn ich bin franzose.

So ich möchte WinGraph benutzen mit FP 2.6. Aber es ist mir nicht gelungen, die Uniten zu compilieren. (Die aktuelle version funktioniert nur mit FP 2.4.)

Ich weiss nicht, ob es ist möglich, und wie ich kann tun. Hat jemand getestet ?
Petit poisson deviendra grand,
Pourvu que Dieu lui prête vie.

knight
Beiträge: 802
Registriert: Mi 13. Sep 2006, 22:30

Re: FPC 2.6 und WinGraph

Beitrag von knight »

Roland Chastain hat geschrieben:Aber es ist mir nicht gelungen, die Uniten zu compilieren.
Hallo Roland,

in einem solchen Fall ist es immer hilfreich, wenn du die Fehlermeldungen angeben kannst, die du erhalten hast. Da manche Funktionen von der verwendeten Umgebung (Betriebssystem etc.) abhängen können, solltest du auch dazu etwas schreiben.

knight

Benutzeravatar
Roland Chastain
Beiträge: 169
Registriert: Sa 7. Jul 2012, 21:50
Wohnort: Saargemünd
Kontaktdaten:

Re: FPC 2.6 und WinGraph

Beitrag von Roland Chastain »

knight hat geschrieben:
Roland Chastain hat geschrieben:Aber es ist mir nicht gelungen, die Uniten zu compilieren.
Hallo Roland,

in einem solchen Fall ist es immer hilfreich, wenn du die Fehlermeldungen angeben kannst, die du erhalten hast. Da manche Funktionen von der verwendeten Umgebung (Betriebssystem etc.) abhängen können, solltest du auch dazu etwas schreiben.

knight
Danke, knight.

Da ist die Fehlermeldung :
wingraph.pas(74,27) Fatal: Syntax error, ":" expected but "identifier DRIVER" found
wingraph.pas(0) Fatal: Compilation aborted
und die Linie 74 :

Code: Alles auswählen

procedure DetectGraph(out driver,mode:smallint);
Das Betriebssystem ist Windows 7 32 bits.
Petit poisson deviendra grand,
Pourvu que Dieu lui prête vie.

gocher
Beiträge: 298
Registriert: Di 23. Nov 2010, 23:41
OS, Lazarus, FPC: Ubuntu/Win, Lazarus trunk, FPC trunk
CPU-Target: 32Bit/64Bit
Wohnort: Geldern
Kontaktdaten:

Re: FPC 2.6 und WinGraph

Beitrag von gocher »

Ich habe bisher nichts mit WinGraph probiert, aber ich konnte das Demo kompilieren und auch ausführen!
Läuft das Demo bei Dir?

Voraussetzung ist der Syntax-Modus (-M, {$MODE}) Object Pascal - Mobjfpc der sorgt dafür das out Parameter überhaupt definiert sind!

Falls Du ein Projekt angelegt hast findest Du diese Einstellung unter:
Projekt -> Einstellungen ... -> Compilereinstellungen -> Parsen -> Syntax-Modus
MfG Gocher
akt. Projekt: Webserver(HTTPS HTTP/2) mit integrierten CMS in Free Pascal - www.gocher.me

Benutzeravatar
Roland Chastain
Beiträge: 169
Registriert: Sa 7. Jul 2012, 21:50
Wohnort: Saargemünd
Kontaktdaten:

Re: FPC 2.6 und WinGraph

Beitrag von Roland Chastain »

gocher hat geschrieben:Ich habe bisher nichts mit WinGraph probiert, aber ich konnte das Demo kompilieren und auch ausführen!
Läuft das Demo bei Dir?

Voraussetzung ist der Syntax-Modus (-M, {$MODE}) Object Pascal - Mobjfpc der sorgt dafür das out Parameter überhaupt definiert sind!

Falls Du ein Projekt angelegt hast findest Du diese Einstellung unter:
Projekt -> Einstellungen ... -> Compilereinstellungen -> Parsen -> Syntax-Modus
Vielen dank ! Es war das.

Free-Pascal IDE :
Options
Compiler
Compiler mode
( ) Free Pascal dialect
(*) Object Pascal extension on
( ) Turbo Pascal compatible
( ) Delphi compatible
( ) Macintosh pascal dialect
oder :
Options
Compiler
Compiler mode
( ) Free Pascal dialect
( ) Object Pascal extension on
( ) Turbo Pascal compatible
(*) Delphi compatible
( ) Macintosh pascal dialect
Die beiden funktionieren.

Es freut mich. :)
Petit poisson deviendra grand,
Pourvu que Dieu lui prête vie.

Benutzeravatar
Roland Chastain
Beiträge: 169
Registriert: Sa 7. Jul 2012, 21:50
Wohnort: Saargemünd
Kontaktdaten:

Re: FPC 2.6 und WinGraph

Beitrag von Roland Chastain »

Da ist ein Code Beispiel. :)

[edit]
Datei gelöscht
[/edit]
Zuletzt geändert von Roland Chastain am Mi 29. Apr 2015, 17:19, insgesamt 1-mal geändert.
Petit poisson deviendra grand,
Pourvu que Dieu lui prête vie.

Benutzeravatar
Roland Chastain
Beiträge: 169
Registriert: Sa 7. Jul 2012, 21:50
Wohnort: Saargemünd
Kontaktdaten:

Re: FPC 2.6 und WinGraph

Beitrag von Roland Chastain »

Hallo !

Ich möchte noch etwas fragen. :)

Wissen sie warum dieses Code funktioniert nicht ? (Das Bildschirm bleibt schwarz.)

Code: Alles auswählen

 
program Farben;
 
{$APPTYPE GUI}
 
uses
  WinCrt, WinGraph;
 
var
  f1,f2,f3: longWord;
 
procedure OpenGraph;
var
  gd, gm: smallInt;
begin
  gd := noPalette;
  gm := mCustom;
  SetWindowSize(400, 400);
  InitGraph(gd, gm, 'WinGraph');
  SetBkColor({WhiteSmoke}f1);
  ClearViewPort;
  SetColor({PrussianBlue}f2);
  SetFillStyle(SolidFill, {RoyalBlue}f3);
  SetTextStyle(CourierNewFont or BoldFont, HorizDir, 32);
end;
 
var
  s: string;
 
begin
  f1 := WhiteSmoke;
  f2 := PrussianBlue;
  f3 := RoyalBlue;
 
  OpenGraph;
  s := 'Hallo Welt !';
  FillRect(50,50,350,350);
  OutTextXY((400-TextWidth(s)) div 2, (400-TextHeight(s)) div 2, s);
  ReadKey;
  CloseGraph;
end.
Zuletzt geändert von Lori am Fr 21. Dez 2012, 13:18, insgesamt 1-mal geändert.
Grund: richtiger Highlighter
Petit poisson deviendra grand,
Pourvu que Dieu lui prête vie.

Benutzeravatar
Roland Chastain
Beiträge: 169
Registriert: Sa 7. Jul 2012, 21:50
Wohnort: Saargemünd
Kontaktdaten:

Re: FPC 2.6 und WinGraph

Beitrag von Roland Chastain »

Fehler gefunden ! :)

Code: Alles auswählen

  farbe := DarkOrange; // schlecht
  InitGraph(treiber, modus, '');

Code: Alles auswählen

  InitGraph(treiber, modus, '');
  farbe := DarkOrange; // gut
Da sind kleine Code Beispiele das ich geschrieben habe (PAS und EXE Dateien).
Dateianhänge
Farbe.zip
(209.28 KiB) 165-mal heruntergeladen
Petit poisson deviendra grand,
Pourvu que Dieu lui prête vie.

Benutzeravatar
Roland Chastain
Beiträge: 169
Registriert: Sa 7. Jul 2012, 21:50
Wohnort: Saargemünd
Kontaktdaten:

Re: FPC 2.6 und WinGraph

Beitrag von Roland Chastain »

Hallo ! Da ist ein neues Schachbrett mit WinGraph gemacht. :)

Bild

Viele Grüße.

Roland
Zuletzt geändert von Roland Chastain am Mi 29. Apr 2015, 17:15, insgesamt 2-mal geändert.
Petit poisson deviendra grand,
Pourvu que Dieu lui prête vie.

Benutzeravatar
Roland Chastain
Beiträge: 169
Registriert: Sa 7. Jul 2012, 21:50
Wohnort: Saargemünd
Kontaktdaten:

Re: FPC 2.6 und WinGraph

Beitrag von Roland Chastain »

Hallo ! Ich weiß das es ist nicht ein FreePascal Frage, aber könnten sie mir bitte helfen, die deutsche Version meines Schachbretts zu enden ? :roll:

Code: Alles auswählen

unit chessmessages;
 
interface
 
uses
  chess;
 
type
  tChessMessages = record
    msg_check: shortstring;
    msg_wtm: shortstring;
    msg_btm: shortstring;
    msg_state: array[tGameState]of shortstring;
    msg_illegal: shortstring;
    msg_end: shortstring;
    msg_loading: shortstring;
  end;
 
const
  lang_en = 0;
  lang_de = 1;
  lang_fr = 2;
 
var
  messages: array[lang_en..lang_fr]of tChessMessages;
 
implementation
 
begin
  with messages[lang_en] do
  begin
    msg_check := 'Check !';
    msg_wtm := 'White to move.';
    msg_btm := 'Black to move.';
    msg_state[progress] := 'Game in progress';
    msg_state[checkmate] := 'Checkmate';
    msg_state[stalemate] := 'Stalemate';
    msg_state[draw] := 'Draw';
    msg_illegal := 'Illegal move !';
    msg_end := 'Game over. See you soon !';
    msg_loading := 'Loading...';
  end;
  with messages[lang_de] do
  begin
    msg_check := 'Schach !';
    msg_wtm := 'Weiß am Zug.';
    msg_btm := 'Schwarz am Zug.';
    msg_state[progress] := 'Game in progress'; // <-- ?
    msg_state[checkmate] := 'Matt';
    msg_state[stalemate] := 'Patt';
    msg_state[draw] := 'Remis';
    msg_illegal := 'Illegal Zug !';
    msg_end := 'Ende des Spiels. Auf wieder sehen !'; // <-- Ist es korrekt ?
    msg_loading := 'Loading...'; // <-- ?
  end;
  with messages[lang_fr] do
  begin
    msg_check := 'Echec !';
    msg_wtm := 'Les blancs ont le trait.';
    msg_btm := 'Les noirs ont le trait.';
    msg_state[progress] := 'Partie en cours';
    msg_state[checkmate] := 'Mat';
    msg_state[stalemate] := 'Pat';
    msg_state[draw] := 'Partie remise';
    msg_illegal := 'Coup ill'#233'gal !';
    msg_end := 'La partie est termin'#233'e. A bient'#244't !';
    msg_loading := 'Chargement...';
  end;
end.
Petit poisson deviendra grand,
Pourvu que Dieu lui prête vie.

Socke
Lazarusforum e. V.
Beiträge: 3178
Registriert: Di 22. Jul 2008, 19:27
OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
CPU-Target: 32bit x86 armhf
Wohnort: Köln
Kontaktdaten:

Re: FPC 2.6 und WinGraph

Beitrag von Socke »

Code: Alles auswählen

 
  with messages[lang_de] do
  begin
    msg_check := 'Schach!'; // <-- vor Satzzeichen wird kein Leerzeichen gesetzt
    msg_wtm := 'Weiß am Zug.';
    msg_btm := 'Schwarz am Zug.';
    msg_state[progress] := 'Spiel läuft';
    msg_state[checkmate] := 'Matt';
    msg_state[stalemate] := 'Patt';
    msg_state[draw] := 'Remis';
    msg_illegal := 'Ungültiger Zug!';
    msg_end := 'Ende des Spiels. Auf wiedersehen!';
    msg_loading := 'Lade ...';
  end;
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein

Michl
Beiträge: 2511
Registriert: Di 19. Jun 2012, 12:54

Re: FPC 2.6 und WinGraph

Beitrag von Michl »

Will nicht pingelig :wink: sein, doch da es speziell um die korrekte Rechtschreibung geht:

Code: Alles auswählen

   msg_end := 'Ende des Spiels. Auf Wiedersehen!'; //das Wiedersehen

Code: Alles auswählen

type
  TLiveSelection = (lsMoney, lsChilds, lsTime);
  TLive = Array[0..1] of TLiveSelection;  

Benutzeravatar
Roland Chastain
Beiträge: 169
Registriert: Sa 7. Jul 2012, 21:50
Wohnort: Saargemünd
Kontaktdaten:

Re: FPC 2.6 und WinGraph

Beitrag von Roland Chastain »

Vielen Dank!
Petit poisson deviendra grand,
Pourvu que Dieu lui prête vie.

Antworten