<?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[neues Fenster erstelln während der Laufzeit]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich bin dabei ein Progamm zu schreiben bei dem ich Bilder Umbenenne und Bildinformationen anzeigen möchte.<br />
Ich habe in meinen Programmfenster 3 Images eingebettet auf den ich verschiedene Bilder anzeigen kann. Ich möchte nun auf das Image klicken und es soll einen neues Fenster aufgehen auf dem das Bild in Groß zu sehen ist.</p>
<p>Wer kann mir diesbezüglich helfen.</p>
<p>Danke Ralf</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/169311/neues-fenster-erstelln-während-der-laufzeit</link><generator>RSS for Node</generator><lastBuildDate>Thu, 13 Aug 2026 15:38:12 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/169311.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 04 Jan 2007 09:26:36 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to neues Fenster erstelln während der Laufzeit on Thu, 04 Jan 2007 09:26:36 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich bin dabei ein Progamm zu schreiben bei dem ich Bilder Umbenenne und Bildinformationen anzeigen möchte.<br />
Ich habe in meinen Programmfenster 3 Images eingebettet auf den ich verschiedene Bilder anzeigen kann. Ich möchte nun auf das Image klicken und es soll einen neues Fenster aufgehen auf dem das Bild in Groß zu sehen ist.</p>
<p>Wer kann mir diesbezüglich helfen.</p>
<p>Danke Ralf</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1202460</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1202460</guid><dc:creator><![CDATA[RalfKruppa]]></dc:creator><pubDate>Thu, 04 Jan 2007 09:26:36 GMT</pubDate></item><item><title><![CDATA[Reply to neues Fenster erstelln während der Laufzeit on Thu, 04 Jan 2007 09:43:58 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Womit hast du denn genau Probleme? Du hast doch schon gut beschrieben wie du vorgehen must.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1202478</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1202478</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Thu, 04 Jan 2007 09:43:58 GMT</pubDate></item><item><title><![CDATA[Reply to neues Fenster erstelln während der Laufzeit on Thu, 04 Jan 2007 09:51:13 GMT]]></title><description><![CDATA[<p>Du erstellst dir ein weiteres Formular mit einem einzigen Image und evtl. einem Button &quot;Schließen&quot; in einer von dir gewählten Größe (z.B. Maximiert).</p>
<p>Dann rufst du in der Image-OnClick bzw. OnDblClick das obige Formular mit Show bzw. ShowModal auf. Mittels der Methode TImage::Assign kannst du dann das Image zuweisen bzw. du übergibst den Dateinamen und lädst das Bild dann mit Image-&gt;Picture-&gt;LoadFromFile ein.</p>
<p>Wenn du das Bild vergrößert angezeigt haben willst, aber den Aspect Ratio beibehalten willst, dann mußt du ein wenig Mathematik betreiben und die Werte für Width und Height entsprechend setzen (Stretch muß dann true sein).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1202484</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1202484</guid><dc:creator><![CDATA[Th]]></dc:creator><pubDate>Thu, 04 Jan 2007 09:51:13 GMT</pubDate></item><item><title><![CDATA[Reply to neues Fenster erstelln während der Laufzeit on Thu, 04 Jan 2007 12:28:05 GMT]]></title><description><![CDATA[<p>Hallo Th,</p>
<p>und was wenn er mehrer Fenster offen haben will ? dann kommt man mit nur einem nicht aus.</p>
<p>Also hier mal mein Vorschlag. Du definiert die erst mal einen Zeiger auf eine TForm:</p>
<pre><code class="language-cpp">TForm *NewWindow = NULL;
</code></pre>
<p>Dann erzeugst du mit new ein neues Element wenn auf das Minibild geklickt wird:</p>
<pre><code class="language-cpp">NewWindow = new TForm(Application);
</code></pre>
<p>und machst du es nur noch sichtbar mit:</p>
<pre><code class="language-cpp">NewWindow-&gt;Visible = true;
</code></pre>
<p>( Beim schließen des Programms nicht das freigeben des Speichers vergessen!)</p>
<pre><code class="language-cpp">if ( NewWindow != NULL )
    delete NewWindow;
</code></pre>
<p>Dann hast du schon mal das Fenster.<br />
Wie man darin dann noch das Image darstellt, weiß ich im Moment auch noch nicht. Vielleicht hat dazu ja noch jemand anderes eine Idee.</p>
<p>Pronto451</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1202642</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1202642</guid><dc:creator><![CDATA[Pronto451]]></dc:creator><pubDate>Thu, 04 Jan 2007 12:28:05 GMT</pubDate></item><item><title><![CDATA[Reply to neues Fenster erstelln während der Laufzeit on Thu, 04 Jan 2007 13:12:46 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>also hier mal mein SourceCode.</p>
<pre><code class="language-cpp">//---------------------------------------------------------------------------

#include &lt;vcl.h&gt;
#pragma hdrstop

#include &quot;Unit1.h&quot;
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link &quot;CLButton&quot;
#pragma resource &quot;*.dfm&quot;
TForm1 *Form1;

TForm *NewWindow = NULL;
TImage *NewImage = NULL;

//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
  : TForm(Owner)
{
}
//---------------------------------------------------------------------------

void __fastcall TForm1::CLButton1Click(TObject *Sender)
{
  NewWindow = new TForm(Application);

  // Größe und Position des Fensters setzen
  NewWindow-&gt;Left = 200;
  NewWindow-&gt;Top = 200;
  NewWindow-&gt;Width = 1024;
  NewWindow-&gt;Height = 768;

  // Image Element erzeugen
  NewImage = new TImage(NewWindow);
  NewImage-&gt;Parent = NewWindow;

  NewImage-&gt;Align = alClient;  // Image auf Fenstergröße ausdehnen
  NewImage-&gt;Visible = true;
  NewImage-&gt;Picture-&gt;LoadFromFile(&quot;test.bmp&quot;);

  NewWindow-&gt;Visible = true;

}
//---------------------------------------------------------------------------

void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &amp;Action)
{
  if ( NewImage != NULL )
    delete NewImage;
  if ( NewWindow != NULL )
    delete NewWindow;
}
//---------------------------------------------------------------------------
</code></pre>
<p>Pronto451</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1202701</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1202701</guid><dc:creator><![CDATA[Pronto451]]></dc:creator><pubDate>Thu, 04 Jan 2007 13:12:46 GMT</pubDate></item><item><title><![CDATA[Reply to neues Fenster erstelln während der Laufzeit on Thu, 04 Jan 2007 13:13:10 GMT]]></title><description><![CDATA[<p>weiß nciht, aber viell sollte erstmal die form, welche das image beinhaltet, erstmal angezeigt werden?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1202706</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1202706</guid><dc:creator><![CDATA[ser1al_ausgeloggt]]></dc:creator><pubDate>Thu, 04 Jan 2007 13:13:10 GMT</pubDate></item><item><title><![CDATA[Reply to neues Fenster erstelln während der Laufzeit on Thu, 04 Jan 2007 13:21:56 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>noch was. Beim berechnen der Fenstergröße mußt du die Fensterrahmenbreite und die Höhe der Titelleiste zu der Bildgröße hinzurechnen, sonst wird das Bild rechts und unten abgeschnitten. (War noch ein Prob bei dem Code oben)</p>
<p>Problem gelöst ?</p>
<p>Pronto451</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1202717</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1202717</guid><dc:creator><![CDATA[Pronto451]]></dc:creator><pubDate>Thu, 04 Jan 2007 13:21:56 GMT</pubDate></item><item><title><![CDATA[Reply to neues Fenster erstelln während der Laufzeit on Thu, 04 Jan 2007 14:16:25 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/1189">@Pronto451</a>: Dein SourceCode zeigt zwar bei mehrfachem Button-Click mehrere Fenster an, bei FormClose löschst du dann aber nur das zuletzt geöffnete Fenster. Um den Speicher wieder freizugeben, sollte im OnClose-Ereignis des Image-Formulars der Speicher selbst freigegeben werden (mittels Action = caFree).</p>
<p>Für einen Anfänger ist es wohl einfacher, wenn er das Formular mit dem Forular-Editor erstellt und dann anzeigt.</p>
<p>Auch wenn ich als professioneller Entwickler auch meistens die Formular-Elemente (so wie bei deinem Code) per Source-Code erstelle (um die einzelnen Elemente in dynamischen Arrays zu verwalten)...</p>
<p>Hier also meine Vorgehensweise:</p>
<pre><code class="language-cpp">#include &quot;frmImage.h&quot;  // oder wie auch immer der Dateiname des Image-Formular bezeichnet ist

void __fastcall TMainForm::Image1Click(TObject *Sender)
{
  TImageForm *pImageForm = new TForm(Application);

  pImageForm-&gt;Show(); // bzw. ShowModal() wenn immer nur ein Bild gleichzeitig auf sein soll
}
</code></pre>
<p>Und in &quot;frmImage.cpp&quot; (Image-Formular) das OnClose-Ereignis :</p>
<pre><code class="language-cpp">void __fastcall TImageForm::FormClose(TObject *Sender, TCloseAction &amp;Action)
{
  Action = caFree;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1202749</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1202749</guid><dc:creator><![CDATA[Th]]></dc:creator><pubDate>Thu, 04 Jan 2007 14:16:25 GMT</pubDate></item><item><title><![CDATA[Reply to neues Fenster erstelln während der Laufzeit on Fri, 05 Jan 2007 07:43:28 GMT]]></title><description><![CDATA[<p>Danke Th für die Info ... ich hab das ganze nur so in einigen Minuten zusammen gehauen und das war sicher noch nicht das Non plus Ultra <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /> Weil ich das bisher aber noch nie gebraucht habe, wollte ich es mal ausprobieren.</p>
<p>Pronto451</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1203276</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1203276</guid><dc:creator><![CDATA[Pronto451]]></dc:creator><pubDate>Fri, 05 Jan 2007 07:43:28 GMT</pubDate></item></channel></rss>