<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Pokerspiel]]></title><description><![CDATA[<p>Ich weiß nicht genau, ob ich hier richtig bin, ich will auch ein Kartenspiel programmieren, den Programmablauf habe ich in Pascal programmiert, ja ich weiß komisch aber wahr.<br />
Mit TurboPascal direkt kann ich aber nichts grafisch darstellen, deshalb greife ich auf API-Funktionen zurück.</p>
<p>Zum Kartenspiel: ich hätte gern einen Tisch in der Mittee des Fenster, auf dem karten sind. und um den Tisch ständig aktualisierende Texte.</p>
<p>Soweit bin ich:</p>
<pre><code>{$APPTYPE GUI}
program Kartenspiel;

uses
  Windows,Wincrt;

{$r name.res}

const
  AppName = 'Kartenspiel';

var
  AMessage: Msg;
  hWindow: HWnd;
  dcWindow : HDC;

PROCEDURE Throw(throw_string : pChar);
begin

  MessageBox(0, throw_string, 'Error', MB_OK);
  Halt(0);

end;

FUNCTION WindowProc(Window: HWnd; AMessage, WParam,
                    LParam: Longint): Longint; stdcall; export;

begin

  WindowProc := 0;

  case AMessage of

    WM_ACTIVATE:
      begin
      end;

    WM_PAINT:
      begin
	dcWindow := GetDC(hWindow);

        RoundRect(dcWindow,0,0,600,300,100,100);

        TextOut(dcWindow, 50, 1, 'Einfache Textausgabe!', 21);

	ReleaseDC(hWindow, dcWindow);
      end;

    WM_DESTROY:
      begin
         PostQuitMessage(0);
         Exit;
      end;

  end;

  WindowProc := DefWindowProc(Window, AMessage, WParam, LParam);
end;

PROCEDURE WindowRegister;
var
  WindowClass: WndClass;
begin
  WindowClass.Style := cs_hRedraw or cs_vRedraw;
  WindowClass.lpfnWndProc := WndProc(@WindowProc);
  WindowClass.cbClsExtra := 0;
  WindowClass.cbWndExtra := 0;
  WindowClass.hInstance := system.MainInstance;
  WindowClass.hIcon := LoadIcon(system.MainInstance,makeintresource(1));
  WindowClass.hCursor := LoadCursor(0, idc_Arrow);
  WindowClass.hbrBackground := GetStockObject(WHITE_BRUSH);
  WindowClass.lpszMenuName := nil;
  WindowClass.lpszClassName := 'WinClass';

  if RegisterClass(WindowClass) &lt;&gt; 0 = false then Throw('Could not Register Window!');
end;

PROCEDURE WindowCreate;
begin
  hWindow := CreateWindow('WinClass', AppName,
              ws_OverlappedWindow, cw_UseDefault, cw_UseDefault,
              cw_UseDefault, cw_UseDefault, 0, 0, system.MainInstance, nil);

  if hWindow &lt;&gt; 0 then begin
    ShowWindow(hWindow, CmdShow);
    UpdateWindow(hWindow);
  end;

  if longint(hWindow) = 0 then Throw('Could not create Window!');
end;

begin

  WindowRegister;
  WindowCreate;

  while GetMessage(@AMessage, 0, 0, 0) do begin
    TranslateMessage(AMessage);
    DispatchMessage(AMessage);
  end;
  Halt(AMessage.wParam);

end.
</code></pre>
<p>Nicht viel aber schon mal der umriss des Tisches, als abgerundetes Rechteck.<br />
Jetzt könnt ihr mir sicher auch sagen, ob ich hier im Forum richtig bin.</p>
<p>Fragen: Wie kann ich das Rechteck nun mit Farben ausfüllen?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/163986/pokerspiel</link><generator>RSS for Node</generator><lastBuildDate>Fri, 17 Jul 2026 14:13:22 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/163986.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 03 Nov 2006 19:29:01 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Pokerspiel on Fri, 03 Nov 2006 19:29:01 GMT]]></title><description><![CDATA[<p>Ich weiß nicht genau, ob ich hier richtig bin, ich will auch ein Kartenspiel programmieren, den Programmablauf habe ich in Pascal programmiert, ja ich weiß komisch aber wahr.<br />
Mit TurboPascal direkt kann ich aber nichts grafisch darstellen, deshalb greife ich auf API-Funktionen zurück.</p>
<p>Zum Kartenspiel: ich hätte gern einen Tisch in der Mittee des Fenster, auf dem karten sind. und um den Tisch ständig aktualisierende Texte.</p>
<p>Soweit bin ich:</p>
<pre><code>{$APPTYPE GUI}
program Kartenspiel;

uses
  Windows,Wincrt;

{$r name.res}

const
  AppName = 'Kartenspiel';

var
  AMessage: Msg;
  hWindow: HWnd;
  dcWindow : HDC;

PROCEDURE Throw(throw_string : pChar);
begin

  MessageBox(0, throw_string, 'Error', MB_OK);
  Halt(0);

end;

FUNCTION WindowProc(Window: HWnd; AMessage, WParam,
                    LParam: Longint): Longint; stdcall; export;

begin

  WindowProc := 0;

  case AMessage of

    WM_ACTIVATE:
      begin
      end;

    WM_PAINT:
      begin
	dcWindow := GetDC(hWindow);

        RoundRect(dcWindow,0,0,600,300,100,100);

        TextOut(dcWindow, 50, 1, 'Einfache Textausgabe!', 21);

	ReleaseDC(hWindow, dcWindow);
      end;

    WM_DESTROY:
      begin
         PostQuitMessage(0);
         Exit;
      end;

  end;

  WindowProc := DefWindowProc(Window, AMessage, WParam, LParam);
end;

PROCEDURE WindowRegister;
var
  WindowClass: WndClass;
begin
  WindowClass.Style := cs_hRedraw or cs_vRedraw;
  WindowClass.lpfnWndProc := WndProc(@WindowProc);
  WindowClass.cbClsExtra := 0;
  WindowClass.cbWndExtra := 0;
  WindowClass.hInstance := system.MainInstance;
  WindowClass.hIcon := LoadIcon(system.MainInstance,makeintresource(1));
  WindowClass.hCursor := LoadCursor(0, idc_Arrow);
  WindowClass.hbrBackground := GetStockObject(WHITE_BRUSH);
  WindowClass.lpszMenuName := nil;
  WindowClass.lpszClassName := 'WinClass';

  if RegisterClass(WindowClass) &lt;&gt; 0 = false then Throw('Could not Register Window!');
end;

PROCEDURE WindowCreate;
begin
  hWindow := CreateWindow('WinClass', AppName,
              ws_OverlappedWindow, cw_UseDefault, cw_UseDefault,
              cw_UseDefault, cw_UseDefault, 0, 0, system.MainInstance, nil);

  if hWindow &lt;&gt; 0 then begin
    ShowWindow(hWindow, CmdShow);
    UpdateWindow(hWindow);
  end;

  if longint(hWindow) = 0 then Throw('Could not create Window!');
end;

begin

  WindowRegister;
  WindowCreate;

  while GetMessage(@AMessage, 0, 0, 0) do begin
    TranslateMessage(AMessage);
    DispatchMessage(AMessage);
  end;
  Halt(AMessage.wParam);

end.
</code></pre>
<p>Nicht viel aber schon mal der umriss des Tisches, als abgerundetes Rechteck.<br />
Jetzt könnt ihr mir sicher auch sagen, ob ich hier im Forum richtig bin.</p>
<p>Fragen: Wie kann ich das Rechteck nun mit Farben ausfüllen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1167936</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1167936</guid><dc:creator><![CDATA[lordblacksheep]]></dc:creator><pubDate>Fri, 03 Nov 2006 19:29:01 GMT</pubDate></item><item><title><![CDATA[Reply to Pokerspiel on Fri, 03 Nov 2006 19:43:21 GMT]]></title><description><![CDATA[<p>Falsches Forum, nur für C/C++ ...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1167944</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1167944</guid><dc:creator><![CDATA[CodeFinder]]></dc:creator><pubDate>Fri, 03 Nov 2006 19:43:21 GMT</pubDate></item><item><title><![CDATA[Reply to Pokerspiel on Sat, 04 Nov 2006 03:10:07 GMT]]></title><description><![CDATA[<p>CodeFinder schrieb:</p>
<blockquote>
<p>Falsches Forum, nur für C/C++ ...</p>
</blockquote>
<p>Quatsch...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1168052</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1168052</guid><dc:creator><![CDATA[wisser]]></dc:creator><pubDate>Sat, 04 Nov 2006 03:10:07 GMT</pubDate></item><item><title><![CDATA[Reply to Pokerspiel on Sat, 04 Nov 2006 05:39:44 GMT]]></title><description><![CDATA[<p>Mach die Graphic mit Bitmaps und zeig diese an. Das ganze mit irgendwelchen Zeichenfunktionen zusammenzufrimeln ist viel zu aufwendig.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1168056</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1168056</guid><dc:creator><![CDATA[BetterThanCodeFinder]]></dc:creator><pubDate>Sat, 04 Nov 2006 05:39:44 GMT</pubDate></item></channel></rss>