Открытый TDecoratedMDIFrame Maximized

Я пишу приложение для Embarcadero RAD 2 Studio (borland) и библиотеки owlNext.

Там я создаю TDecoratedMDIFrame Объект, который я открываю с помощью

class TMDIApp : public owl::TApplication { // -------------------------------

public:
TMDIApp() : owl::TApplication(ProgName) {}

TMDIApp(const char far* name, HINSTANCE instance, HINSTANCE prevInstance, const char far* cmdLine, int cmdShow) : owl::TApplication(name, instance, prevInstance, cmdLine, cmdShow) {}

void InitMainWindow();
};

void TMDIApp::InitMainWindow() { // --------------------------
PMAcMDI = new TMAcMDI;
PMW = new TDecoratedMDIFrame(ProgName, MAC_MENU, *PMAcMDI);

MainWindow = PMW;
}

int OwlMain(int, char* []) { // ------------------------
return TMDIApp().Run();
}

Итак, в конце концов, он открывается с помощью aplicat.cpp библиотеки owlnext, используя MainWindow->ShowWindow(nCmdShow);,

Тем не менее, теперь я хочу открыть его в развернутом виде.

Я сделал некоторые исследования и натолкнулся на
PMW->WindowProc(WM_SIZE,SIZE_MAXIMIZED,0);
Который, кажется, ничего не делает …

Кто-нибудь из вас знает, как развернуть это окно или развернуть его?

0

Решение

Я нашел информацию об этой проблеме в старой копии archive.org «Руководства программиста OWL»http://archive.org/stream/bitsavers_borlandborindowsforCVersion2.0ProgrammersGuideOct9_19152845/Borland_ObjectWindows_for_C_Version_2.0_Programmers_Guide_Oct93_djvu.txt

Там это говорит:

~ ~ Вы можете изменить способ отображения главного окна вашего приложения

Указывая маму, устанавливающую элемент данных T Application nCmdShow,
что соответствует параметру ^ / WinMain nCmdShow. Вы можете установить
эта переменная, как только Run

Функция начинается, до тех пор, пока вы не вызовете приложение T:
: Lnitlnstance. Это фактически означает, что вы можете установить nCmdShow либо в
функция InitApplication или InitMainWindow.

Например, предположим, что вы хотите, чтобы ваше окно было развернуто
всякий раз, когда пользователь запускает приложение. Вы можете установить nCmdShow в вашем
Функция InitMainWindow:

Класс TMyApplication: public TApplication {public:

TMyApplication (char far * name): TApplication (name) {}

void InitMainWindow ();

1; ■ ■

void TMyApplication :: InitMainWindow () {

SetMainWindow (новый TFrameWindow (, «Максимальное окно»)); nCmdShow =
SW_SHOWMAXIMIZED;

  • } int ‘

OwlMain (int argc> char * argv []) {

, return TMyApplication («Ух ты!»). Run (); } ‘

nCmdShow может быть установлен на любое значение, соответствующее как (параметр
Windows-функция ShowWindow или функция-член TWindow :: Shozv,
такие как SW_HIDE, SW_SHOWNORMAL, SW_NORMAL и так далее.

Итак, в моем случае добавление nCmdShow = SW_SHOWMAXIMIZED; внутри моего InitMainWindow () определения было достаточно.

0

Другие решения


По вопросам рекламы [email protected]