Показать сообщение отдельно
Старый 10.09.2016, 22:22   #5  
DSPIC is offline
DSPIC
Боец
 
1,077 / 1234 (44) ++++++++
Регистрация: 11.04.2008
Цитата:
Сообщение от Logger Посмотреть сообщение
Спс.
Да они еще в 2009-й теряли в презентабельности.
Но никак не можем переучиться на новый вид.

Пока не можем решить вопрос как различать формы из двух разных приложений.
Например, аналитик одновременно работает в тестовой аксапте и в рабочей.
или программист работает в деве и в тесте. В случае когда все окна собраны внутри главного - то все просто - по заголовку главного окна все понятно. А если каждое само по себе, то легко перепутать.
Когда-то я эту проблему решал так:

\Classes\SysSetupFormRun\init
X++:
public void init()
{
    super();

    if (this.isWorkflowEnabled())
    {
        workflowControls = SysWorkflowFormControls::construct(this);
        workflowControls.initControls();
    }

    // EVGA -->
    this.devSetWindowText();
    // EVGA <--
}
\Classes\SysSetupFormRun\devSetWindowText
X++:
// EVGA -->
private void devSetWindowText()
{
    str captionStr;

    captionStr = WinAPI::getWindowText(this.hWnd());

    captionStr = strRem(captionStr, "TEST: ");

    captionStr = "TEST: " + captionStr;

    WinAPI::setWindowText(this.hWnd(), captionStr);

    this.setTimeOut(identifierStr(devSetWindowText), 500);
}
// EVGA <--
Т.е. в caption всех окон приложения устанавливаем тот или иной префикс.

Caption же главного окна приложения можно поменять аналогичным WinApi здесь
\Classes\Info\workspaceWindowCreated

Вдобавок, можно еще и иконку окон поменять, см. WM_SETICON message.
За это сообщение автора поблагодарили: Logger (3), Raven Melancholic (5).