2017-04-08 2 views
0

まず、純粋なC++テキストを使用してGUIを作成しようとしています。私のアプリケーションは複雑なGUIを必要としないので、私はVisual Studioを避けたいです。.rcリソーススクリプトを使用してメインウィンドウにコントロール(例えばボタン)を手動で配置する方法

だから、私は.rcファイルに次のコードを持っている:

#include "resource.h" 

IDR_MYMENU MENU 
BEGIN 
    POPUP "&File" 
    BEGIN 
     MENUITEM "E&xit", ID_FILE_EXIT 
    END 
END 

EDITTEXT IDC_BY,25,7,25,25,ES_NUMBER 

IDI_MYICON ICON "one.ico" 

コンパイラはEDITTEXTラインで構文エラーを示します。私は、このEDITTEXTは、.rcファイルに直接ではなく、メニューのようなものの下に置かなければならないと考えています。私は、ウィンドウ内にコントロールを配置する唯一の方法は、コントロールをダイアログボックスに配置してウィンドウに配置することだと読んだことがあります。しかし、私の研究では、ダイアログボックスは元のウィンドウの一部ではなく、「新しいポップアップウィンドウ」であるという考えがありました。私はそれをうまく説明したかったと思う。助けを前にありがとう。

+0

あなただけのダイアログ内のコントロールを作成するために、リソース・ファイルを使用することができます。非ダイアログウィンドウにコントロールを追加する場合は、実行時にコントロールを作成する必要があります。 –

+0

リソースファイルは、実行可能ファイル内のWindowsリソースを定義します。リソースとは、アイコン、カーソル、文字列、メニュー、ビットマップ、ダイアログなどです。編集テキストボックスはトップレベルのリソースではありません。これはDIALOGリソース内に属します。 –

答えて

0

EDITTEXTステートメントは、ダイアログリソースブロック内に表示する必要があります(詳細はResource file reference documentationを参照)。独自のリソースファイルを作成するための出発点として、デフォルトのwin32アプリケーションのダイアログを使用することができます。

IDD_ABOUTBOX DIALOGEX 0, 0, 170, 62 
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU 
CAPTION "About Win32Project2" 
FONT 8, "MS Shell Dlg" 
BEGIN 
    ICON   IDR_MAINFRAME,IDC_STATIC,14,14,21,20 
    LTEXT   "Win32Project2, Version 1.0",IDC_STATIC,42,14,114,8,SS_NOPREFIX 
    LTEXT   "Copyright (C) 2017",IDC_STATIC,42,26,114,8 
    DEFPUSHBUTTON "OK",IDOK,113,41,50,14,WS_GROUP 
END 
関連する問題