<?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[Fensterposition wieder herstellen]]></title><description><![CDATA[<p>Hallo zusammen,</p>
<p>ich möchte ein Formular nach dem schließen und neustarten der Anwendung immer an der gleichen Stelle erstellen, wie es der Anwender geschlossen hat. In der TForm Klasse gibt es die Eigenschaft Position, aber etwas mit Koordinaten finde ich in der tollen Hilfe zu Turbo C++ 2006 leider nicht.</p>
<p>Kann mir jemand ein Tip geben?</p>
<p>VG Pixfreak</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/168349/fensterposition-wieder-herstellen</link><generator>RSS for Node</generator><lastBuildDate>Thu, 13 Aug 2026 11:04:28 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/168349.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 21 Dec 2006 07:53:57 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Fensterposition wieder herstellen on Thu, 21 Dec 2006 07:53:57 GMT]]></title><description><![CDATA[<p>Hallo zusammen,</p>
<p>ich möchte ein Formular nach dem schließen und neustarten der Anwendung immer an der gleichen Stelle erstellen, wie es der Anwender geschlossen hat. In der TForm Klasse gibt es die Eigenschaft Position, aber etwas mit Koordinaten finde ich in der tollen Hilfe zu Turbo C++ 2006 leider nicht.</p>
<p>Kann mir jemand ein Tip geben?</p>
<p>VG Pixfreak</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1195831</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1195831</guid><dc:creator><![CDATA[pixfreak]]></dc:creator><pubDate>Thu, 21 Dec 2006 07:53:57 GMT</pubDate></item><item><title><![CDATA[Reply to Fensterposition wieder herstellen on Thu, 21 Dec 2006 08:15:29 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Du must eben die Position (Left, Top) und die Größe (Width, Height) in einer Datei speichern und beim Starten wieder auslesen.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1195851</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1195851</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Thu, 21 Dec 2006 08:15:29 GMT</pubDate></item><item><title><![CDATA[Reply to Fensterposition wieder herstellen on Thu, 21 Dec 2006 10:41:29 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>genau so hatte ich es vor. Nur gibt die Auflistung in der Hilfe keine Namen an... Dort tauchen diese Eigenschaften nicht auf <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f621.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--pouting_face"
      title=":rage:"
      alt="😡"
    /></p>
<p>Probiert hatte ich es noch nicht.</p>
<p>Vielen Dank für den Tip</p>
<p>VG Pixfreak</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1195961</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1195961</guid><dc:creator><![CDATA[pixfreak]]></dc:creator><pubDate>Thu, 21 Dec 2006 10:41:29 GMT</pubDate></item><item><title><![CDATA[Reply to Fensterposition wieder herstellen on Thu, 21 Dec 2006 10:42:38 GMT]]></title><description><![CDATA[<p>Man kann es noch besser machen durch Eiträge in der Registry.....<br />
Aber am Anfang ist eine einfache datei das Beste.</p>
<p>Kannst dir mal TiniFile in der Hilfe angucken.....</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1195964</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1195964</guid><dc:creator><![CDATA[dlonra]]></dc:creator><pubDate>Thu, 21 Dec 2006 10:42:38 GMT</pubDate></item><item><title><![CDATA[Reply to Fensterposition wieder herstellen on Thu, 21 Dec 2006 10:46:22 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>pixfreak schrieb:</p>
<blockquote>
<p>Hi,<br />
Nur gibt die Auflistung in der Hilfe keine Namen an... Dort tauchen diese Eigenschaften nicht auf</p>
</blockquote>
<p>Dann schau zur Entwurfszeit im Objektinspektor nach, oder las dir von der Codevervollständigung die vorhandenen Eigenschaften anzeigen (wenn sowas im Turbo C++ vorhanden ist)</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1195973</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1195973</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Thu, 21 Dec 2006 10:46:22 GMT</pubDate></item><item><title><![CDATA[Reply to Fensterposition wieder herstellen on Thu, 21 Dec 2006 11:19:50 GMT]]></title><description><![CDATA[<p>Hi,<br />
ich benutze immer noch den <strong>Borland Builder 5</strong><br />
Folgender Code funktioniert bei mir, alles für die Registry von XP<br />
Bei mir funktioniert das so..... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
<p>in der Header TForm1.h :</p>
<pre><code class="language-cpp">void regstart(); //Funktion ausführen wenn Programm gestartet wird ---&gt; FormCreat oder so
bool regkeyda(AnsiString key);
bool regkeyneu(AnsiString key);
bool StringValueLesen(AnsiString key, AnsiString Value, AnsiString &amp;wert);
bool StringValueSchreiben(AnsiString key, AnsiString Value, AnsiString wert);
bool IntValueLesen(AnsiString key, AnsiString Value, int &amp;wert);
bool IntValueSchreiben(AnsiString key, AnsiString Value, int wert);
bool FloatValueLesen(AnsiString key, AnsiString Value, float &amp;wert);
bool FloatValueSchreiben(AnsiString key, AnsiString Value, float wert);
void regende(); //Wenn das Programm beendet wird ...... ausführen
</code></pre>
<p>in der Unit TForm1.cpp :</p>
<pre><code class="language-cpp">//registry registry registry registry registry registry
#include &lt;Registry.hpp&gt;
//Funktion ausführen wenn Programm gestartet wird ---&gt; FormCreat oder so
void TForm1::regstart() 
{if(false==regkeyda(&quot;FipsTec&quot;))                 regkeyneu(&quot;FipsTec&quot;);
 if(false==regkeyda(&quot;FipsTec\\ESIM-IDE&quot;))       regkeyneu(&quot;FipsTec\\ESIM-IDE&quot;);
 StringValueSchreiben(&quot;FipsTec\\ESIM-IDE&quot;, &quot;Arbeitsverz&quot;, installpfad);

 if(false==regkeyda(&quot;FipsTec\\ESIM-IDE\\main&quot;)) regkeyneu(&quot;FipsTec\\ESIM-IDE\\main&quot;);
 int wert;
 //Hauptfenster pos Top
 if(true==IntValueLesen(&quot;FipsTec\\ESIM-IDE\\main&quot;, &quot;Top&quot;, wert))    Top=wert;
 else IntValueSchreiben(&quot;FipsTec\\ESIM-IDE\\main&quot;, &quot;Top&quot;, Top);
 //Hauptfenster pos Left
 if(true==IntValueLesen(&quot;FipsTec\\ESIM-IDE\\main&quot;, &quot;Left&quot;, wert))   Left=wert;
 else IntValueSchreiben(&quot;FipsTec\\ESIM-IDE\\main&quot;, &quot;Left&quot;, Left);
 //Hauptfenster pos Width
 if(true==IntValueLesen(&quot;FipsTec\\ESIM-IDE\\main&quot;, &quot;Width&quot;, wert))  Width=wert;
 else IntValueSchreiben(&quot;FipsTec\\ESIM-IDE\\main&quot;, &quot;Width&quot;, Width);
 //Hauptfenster pos Height
 if(true==IntValueLesen(&quot;FipsTec\\ESIM-IDE\\main&quot;, &quot;Height&quot;, wert)) Height=wert;
 else IntValueSchreiben(&quot;FipsTec\\ESIM-IDE\\main&quot;, &quot;Height&quot;, Height);
 //Hauptfenster pos WindowState
 if(true==IntValueLesen(&quot;FipsTec\\ESIM-IDE\\main&quot;, &quot;WindowState&quot;, wert))WindowState=wert;
 else IntValueSchreiben(&quot;FipsTec\\ESIM-IDE\\main&quot;, &quot;WindowState&quot;, WindowState);
 //weiter parameter
 //Programm counter
 if(true==IntValueLesen(&quot;FipsTec\\ESIM-IDE\\main&quot;, &quot;pzaehler&quot;, wert)){wert=wert+1; IntValueSchreiben(&quot;FipsTec\\ESIM-IDE\\main&quot;, &quot;pzaehler&quot;, wert);}
 else IntValueSchreiben(&quot;FipsTec\\ESIM-IDE\\main&quot;, &quot;pzaehler&quot;, 1);
}//---------------------------------------------------------------------------
void TForm1::regende() //Wenn das Programm beendet wird ...... ausführen
{if(false==regkeyda(&quot;FipsTec&quot;))                 regkeyneu(&quot;FipsTec&quot;);
 if(false==regkeyda(&quot;FipsTec\\ESIM-IDE&quot;))       regkeyneu(&quot;FipsTec\\ESIM-IDE&quot;);
 if(false==regkeyda(&quot;FipsTec\\ESIM-IDE\\main&quot;)) regkeyneu(&quot;FipsTec\\ESIM-IDE\\main&quot;);
 IntValueSchreiben(&quot;FipsTec\\ESIM-IDE\\main&quot;, &quot;Top&quot;, Top);
 IntValueSchreiben(&quot;FipsTec\\ESIM-IDE\\main&quot;, &quot;Left&quot;, Left);
 IntValueSchreiben(&quot;FipsTec\\ESIM-IDE\\main&quot;, &quot;Width&quot;, Width);
 IntValueSchreiben(&quot;FipsTec\\ESIM-IDE\\main&quot;, &quot;Height&quot;, Height);
 IntValueSchreiben(&quot;FipsTec\\ESIM-IDE\\main&quot;, &quot;WindowState&quot;, WindowState);
}//---------------------------------------------------------------------------
bool TForm1::regkeyda(AnsiString key) //schaut nach ob der schlüssel 'key' da ist
{bool isda=false;
 TRegistry *Registry = new TRegistry;
 try
  {Registry-&gt;RootKey = HKEY_CURRENT_USER;
   key=&quot;Software\\&quot;+key;
   if(true==Registry-&gt;OpenKeyReadOnly(key)) isda=true;
  } __finally{delete Registry;}     return isda;
}//---------------------------------------------------------------------------
bool TForm1::regkeyneu(AnsiString key) //erzeugt einen schlüssel
{bool keygeht=false;
 TRegistry *Registry = new TRegistry;
 try
  {Registry-&gt;RootKey = HKEY_CURRENT_USER;
   key=&quot;Software\\&quot;+key;
   if(true==Registry-&gt;CreateKey(key)) keygeht=true;
  } __finally{delete Registry;}     return keygeht;
}//---------------------------------------------------------------------------
bool TForm1::StringValueLesen(AnsiString key, AnsiString Value, AnsiString &amp;wert)
{bool valugeht=false;
 TRegistry *Registry = new TRegistry;
 try
  {Registry-&gt;RootKey = HKEY_CURRENT_USER;
   AnsiString keyy=&quot;Software\\&quot;+key;
   if(true==Registry-&gt;OpenKey(keyy,false))  //Es muss der Schlüssel erst damit geöffnet werden
    {valugeht=true;
     try{wert = Registry-&gt;ReadString(Value);if(wert==&quot;&quot;)valugeht=false;} //value ist leer oder nicht da!!
     catch(...){valugeht=false;}  //Problem mit registry ursache angemeldet mit eingeschränktem user konto
     Registry-&gt;CloseKey();
  } } __finally{delete Registry;}   return valugeht;
}//---------------------------------------------------------------------------
bool TForm1::StringValueSchreiben(AnsiString key, AnsiString Value, AnsiString wert)
{bool valugeht=false;
 TRegistry *Registry = new TRegistry;
 try
  {Registry-&gt;RootKey = HKEY_CURRENT_USER;
   AnsiString keyy=&quot;Software\\&quot;+key;
   if(true==Registry-&gt;OpenKey(keyy,false)) //Es muss der Schlüssel erst damit geöffnet werden
    {Registry-&gt;WriteString(Value, wert);
     Registry-&gt;CloseKey();
     valugeht=true;
  } } __finally{delete Registry;}   return valugeht;
}//---------------------------------------------------------------------------
bool TForm1::IntValueLesen(AnsiString key, AnsiString Value, int &amp;wert)
{bool valugeht=false;
 TRegistry *Registry = new TRegistry;
 try
  {Registry-&gt;RootKey = HKEY_CURRENT_USER;
   AnsiString keyy=&quot;Software\\&quot;+key;
   if(true==Registry-&gt;OpenKey(keyy,false)) //Es muss der Schlüssel erst damit geöffnet werden
    {valugeht=true;
     try{wert = Registry-&gt;ReadInteger(Value);}
     catch(...){valugeht=false;}  //der Value existiert nicht
     Registry-&gt;CloseKey();
  } } __finally{delete Registry;}   return valugeht;
}//---------------------------------------------------------------------------
bool TForm1::IntValueSchreiben(AnsiString key, AnsiString Value, int wert)
{bool valugeht=false;
 TRegistry *Registry = new TRegistry;
 try
  {Registry-&gt;RootKey = HKEY_CURRENT_USER;
   AnsiString keyy=&quot;Software\\&quot;+key;
   if(true==Registry-&gt;OpenKey(keyy,false)) //Es muss der Schlüssel erst damit geöffnet werden
    {Registry-&gt;WriteInteger(Value, wert);
     Registry-&gt;CloseKey();
     valugeht=true;
  } } __finally{delete Registry;}   return valugeht;
}//---------------------------------------------------------------------------
bool TForm1::FloatValueLesen(AnsiString key, AnsiString Value, float &amp;wert)
{bool valugeht=false;
 TRegistry *Registry = new TRegistry;
 try
  {Registry-&gt;RootKey = HKEY_CURRENT_USER;
   AnsiString keyy=&quot;Software\\&quot;+key;
   if(true==Registry-&gt;OpenKey(keyy,false))  //Es muss der Schlüssel erst damit geöffnet werden
    {valugeht=true;
     try{wert = Registry-&gt;ReadFloat(Value);}
     catch(...){valugeht=false;}  //der Value existiert nicht
     Registry-&gt;CloseKey();
  } } __finally{delete Registry;}   return valugeht;
}//---------------------------------------------------------------------------
bool TForm1::FloatValueSchreiben(AnsiString key, AnsiString Value, float wert)
{bool valugeht=false;
 TRegistry *Registry = new TRegistry;
 try
  {Registry-&gt;RootKey = HKEY_CURRENT_USER;
   AnsiString keyy=&quot;Software\\&quot;+key;
   if(true==Registry-&gt;OpenKey(keyy,false)) //Es muss der Schlüssel erst damit geöffnet werden
    {Registry-&gt;WriteFloat(Value, wert);
     Registry-&gt;CloseKey();
     valugeht=true;
  } } __finally{delete Registry;}   return valugeht;
}//---------------------------------------------------------------------------
//registry registry registry registry registry registry
</code></pre>
<p>Ist mein Geschenk für euch zu Weihnachten.<br />
Ich wünsch Euch alle Gute fürs neue Jahr und schöne Feiertage :xmas1:</p>
<p>arnold</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1195996</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1195996</guid><dc:creator><![CDATA[dlonra]]></dc:creator><pubDate>Thu, 21 Dec 2006 11:19:50 GMT</pubDate></item><item><title><![CDATA[Reply to Fensterposition wieder herstellen on Thu, 21 Dec 2006 12:14:35 GMT]]></title><description><![CDATA[<blockquote>
<p>Dann schau zur Entwurfszeit im Objektinspektor nach, oder las dir von der Codevervollständigung die vorhandenen Eigenschaften anzeigen (wenn sowas im Turbo C++ vorhanden ist)</p>
</blockquote>
<p>Jau, die Idee mit dem Objektinspektor ist mir leider nicht gekommen aber klar, da sehe ich sie ja alle.... Die andere Variante habe ich nicht, glaube ich zumindest. Bin aber grade auch nicht an meinem Rechner.</p>
<p>Speichern werde ich die Daten zu den anderen in die Registry. Das klappt schon.</p>
<p>Vielen Dank!</p>
<p>VG Pixfreak</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1196051</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1196051</guid><dc:creator><![CDATA[pixfreak]]></dc:creator><pubDate>Thu, 21 Dec 2006 12:14:35 GMT</pubDate></item></channel></rss>