<?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[Inhalt DialogBox --&amp;gt; MFC Dialog]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich bin totaler MFC noob (ja und eigentlich auch c++ noob^^).</p>
<p>Ich habe eine Konsolen App die eine DIalogBox erstellt und dort einen Editor eines Audio Plugins lädt:</p>
<pre><code class="language-cpp">...
...
...
    MyDLGTEMPLATE t;	
	t.style = WS_POPUPWINDOW|WS_DLGFRAME|DS_MODALFRAME|DS_CENTER;
	t.cx = 100;
	t.cy = 100;
	DialogBoxIndirectParam (GetModuleHandle (0), &amp;t, 0, (DLGPROC)EditorProc, (LPARAM)effect);
...
...
...
INT_PTR CALLBACK EditorProc (HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
	AEffect* effect = theEffect;

	switch(msg)
	{
	case WM_INITDIALOG :
		{
			SetWindowText (hwnd, &quot;VST Editor&quot;);
			SetTimer (hwnd, 1, 20, 0);

			if(effect)
			{
				printf (&quot;HOST&gt; Open editor...\n&quot;);
				effect-&gt;dispatcher (effect, effEditOpen, 0, 0, hwnd, 0);

				printf (&quot;HOST&gt; Get editor rect..\n&quot;);
				ERect* eRect = 0;
				effect-&gt;dispatcher (effect, effEditGetRect, 0, 0, &amp;eRect, 0);
				if(eRect)
				{
					int width = eRect-&gt;right - eRect-&gt;left;
					int height = eRect-&gt;bottom - eRect-&gt;top;
					if(width &lt; 100)
						width = 100;
					if(height &lt; 100)
						height = 100;

					RECT wRect;
					SetRect (&amp;wRect, 0, 0, width, height);
					AdjustWindowRectEx (&amp;wRect, GetWindowLong (hwnd, GWL_STYLE), FALSE, GetWindowLong (hwnd, GWL_EXSTYLE));
					width = wRect.right - wRect.left;
					height = wRect.bottom - wRect.top;

					SetWindowPos (hwnd, HWND_TOP, 0, 0, width, height, SWP_NOMOVE);
				}
			}
		}
		break;

	case WM_TIMER :
		if(effect)
			effect-&gt;dispatcher (effect, effEditIdle, 0, 0, 0, 0);
		break;

	case WM_CLOSE :
		{
			KillTimer (hwnd, 1);

			printf (&quot;HOST&gt; Close editor..\n&quot;);
			if(effect)
				effect-&gt;dispatcher (effect, effEditClose, 0, 0, 0, 0);

			EndDialog (hwnd, IDOK);
		}
		break;
	}

	return 0;
}
</code></pre>
<p>wie kann ich das ganze auf mein MFC Dialogfenster bekommen, also kein neues erzeugen, sondern auf das hauptfenster der App?<br />
schlussendlich muss dieser Aufruf hier richtig sein denke ich mal<br />
<strong>effect-&gt;dispatcher (effect, effEditOpen, 0, 0, hwnd, 0);</strong><br />
wobei ich für das hwnd irgendwie mein MFC Dialogfenster angeben muss, nur wie?<br />
(ist ein void pointer der vorletzte Parameter)<br />
am liebsten wäre es mir, wenn ich noch die position angeben könnte und falls der MFC Dialog zu klein ist ihn zu resizen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<p>aber genug so kurz vorm wochende^^</p>
<p>grüsse titanico</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/143350/inhalt-dialogbox-gt-mfc-dialog</link><generator>RSS for Node</generator><lastBuildDate>Wed, 15 Jul 2026 13:43:00 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/143350.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 07 Apr 2006 13:55:45 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Inhalt DialogBox --&amp;gt; MFC Dialog on Fri, 07 Apr 2006 13:55:45 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich bin totaler MFC noob (ja und eigentlich auch c++ noob^^).</p>
<p>Ich habe eine Konsolen App die eine DIalogBox erstellt und dort einen Editor eines Audio Plugins lädt:</p>
<pre><code class="language-cpp">...
...
...
    MyDLGTEMPLATE t;	
	t.style = WS_POPUPWINDOW|WS_DLGFRAME|DS_MODALFRAME|DS_CENTER;
	t.cx = 100;
	t.cy = 100;
	DialogBoxIndirectParam (GetModuleHandle (0), &amp;t, 0, (DLGPROC)EditorProc, (LPARAM)effect);
...
...
...
INT_PTR CALLBACK EditorProc (HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
	AEffect* effect = theEffect;

	switch(msg)
	{
	case WM_INITDIALOG :
		{
			SetWindowText (hwnd, &quot;VST Editor&quot;);
			SetTimer (hwnd, 1, 20, 0);

			if(effect)
			{
				printf (&quot;HOST&gt; Open editor...\n&quot;);
				effect-&gt;dispatcher (effect, effEditOpen, 0, 0, hwnd, 0);

				printf (&quot;HOST&gt; Get editor rect..\n&quot;);
				ERect* eRect = 0;
				effect-&gt;dispatcher (effect, effEditGetRect, 0, 0, &amp;eRect, 0);
				if(eRect)
				{
					int width = eRect-&gt;right - eRect-&gt;left;
					int height = eRect-&gt;bottom - eRect-&gt;top;
					if(width &lt; 100)
						width = 100;
					if(height &lt; 100)
						height = 100;

					RECT wRect;
					SetRect (&amp;wRect, 0, 0, width, height);
					AdjustWindowRectEx (&amp;wRect, GetWindowLong (hwnd, GWL_STYLE), FALSE, GetWindowLong (hwnd, GWL_EXSTYLE));
					width = wRect.right - wRect.left;
					height = wRect.bottom - wRect.top;

					SetWindowPos (hwnd, HWND_TOP, 0, 0, width, height, SWP_NOMOVE);
				}
			}
		}
		break;

	case WM_TIMER :
		if(effect)
			effect-&gt;dispatcher (effect, effEditIdle, 0, 0, 0, 0);
		break;

	case WM_CLOSE :
		{
			KillTimer (hwnd, 1);

			printf (&quot;HOST&gt; Close editor..\n&quot;);
			if(effect)
				effect-&gt;dispatcher (effect, effEditClose, 0, 0, 0, 0);

			EndDialog (hwnd, IDOK);
		}
		break;
	}

	return 0;
}
</code></pre>
<p>wie kann ich das ganze auf mein MFC Dialogfenster bekommen, also kein neues erzeugen, sondern auf das hauptfenster der App?<br />
schlussendlich muss dieser Aufruf hier richtig sein denke ich mal<br />
<strong>effect-&gt;dispatcher (effect, effEditOpen, 0, 0, hwnd, 0);</strong><br />
wobei ich für das hwnd irgendwie mein MFC Dialogfenster angeben muss, nur wie?<br />
(ist ein void pointer der vorletzte Parameter)<br />
am liebsten wäre es mir, wenn ich noch die position angeben könnte und falls der MFC Dialog zu klein ist ihn zu resizen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<p>aber genug so kurz vorm wochende^^</p>
<p>grüsse titanico</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1032702</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1032702</guid><dc:creator><![CDATA[Titanico]]></dc:creator><pubDate>Fri, 07 Apr 2006 13:55:45 GMT</pubDate></item></channel></rss>