Компьютерный форум
Правила
Вернуться   Компьютерный форум > Форум программистов > Языки программирования > Oberon
Перезагрузить страницу Можно ли в одно окно в ББ поместить 2 разных view
Ответ
 
Опции темы Опции просмотра
  (#1 (permalink)) Старый
Phinc Phinc вне форума
Member
 
Сообщений: 32
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 15.10.2004
По умолчанию Можно ли в одно окно в ББ поместить 2 разных view - 01.06.2005, 17:00

Можно ли в одно окно в ББ поместить 2 разных view. Причем один должен график изображать и занимать практически все окошко, а второй, нижний, нужен со стандартными компонентами, вроде кнопочки и т.д. И для графика нужна возможность скролинга, так как он больше размера экрана, а нижняя часть должна не изменятся.
Ответить с цитированием
  (#2 (permalink)) Старый
S.Yu.Gubanov S.Yu.Gubanov вне форума
Member
 
Сообщений: 587
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 03.12.2002
По умолчанию 01.06.2005, 17:13

Можно.

Например, я примерно такое видел там: http://cern.ch/epse21/epse21.zip
Ответить с цитированием
  (#3 (permalink)) Старый
Phinc Phinc вне форума
Member
 
Сообщений: 32
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 15.10.2004
По умолчанию 02.06.2005, 13:57

Можно ли сделать, чтобы новое окно при появлении было максимального (развернутого на весь экран) размера?
Ответить с цитированием
  (#4 (permalink)) Старый
Phinc Phinc вне форума
Member
 
Сообщений: 32
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 15.10.2004
По умолчанию 06.06.2005, 10:54

Чтобы сделать окно сразу максимизированным, попыталась найти его дескриптор процедурой
WinApi.FindWindowEx(...);
но результат 0. Дескриптор самого окна ББ находится, а вот его дочерних окон нет. В чем проблема?
Ответить с цитированием
  (#5 (permalink)) Старый
Trurl Trurl вне форума
Member
 
Сообщений: 108
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 26.08.2004
По умолчанию 07.06.2005, 11:50

Цитата:
Originally posted by Phinc
[b]Можно ли сделать, чтобы новое окно при появлении было максимального (развернутого на весь экран) размера?
Код:
Windows.dir.maximized:=TRUE;
Ответить с цитированием
Ads.
  (#6 (permalink)) Старый
Phinc Phinc вне форума
Member
 
Сообщений: 32
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 15.10.2004
По умолчанию 07.06.2005, 11:57

Получилось. Только из всех окон большим становится последнее окно, открытое непосредственно из выполняющейся программы
Код:
Windows.dir.maximized:=TRUE;
    Windows.SetDir(Windows.dir);
    wind:=Windows.dir.First();
    WHILE wind # NIL DO 
  wind.GetTitle(title1);
  Log.String(title1); Log.Ln;
  Windows.dir.Update(wind);
  wind:=Windows.dir.Next(wind);
    END;
Ответить с цитированием
  (#7 (permalink)) Старый
Phinc Phinc вне форума
Member
 
Сообщений: 32
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 15.10.2004
По умолчанию 08.06.2005, 12:34

Приложение должно находить дескриптор окна ББ. Что оно и делает в результате выполнения следующей процедуры
handle:=WinApi.FindWindow(NIL, SYSTEM.VAL(WinApi.PtrSTR, SYSTEM.ADR(x[0])));
где в качестве второго параметра передается заголовок окна ББ - BlackBox. Все работало хорошо, но странная штука получается после импользования операции
Windows.dir.maximized:=TRUE;
При первом запуске приложения дескриптор окна определяется, а само окно не максимизировано, но про повторном окно уже максимизировано, но дескриптор окна ББ не определяется и возврощает ноль. Почему?
Ответить с цитированием
  (#8 (permalink)) Старый
Trurl Trurl вне форума
Member
 
Сообщений: 108
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 26.08.2004
По умолчанию 08.06.2005, 16:08

Я бы не советовал связываться с дескрипторами окон в ББ.

FindWindow, вообще говоря, требует имени класса (в ББ: "Oberon Doc","Oberon Dlg" или "Oberon Aux"). Может быть дело в этом?

Более естественный способ получить дескриптор
Код:
VAR win:Windows.Window; handle:INTEGER;
WITH win:HostWindows.Window DO
    handle:= win.wnd
Ответить с цитированием
  (#9 (permalink)) Старый
Phinc Phinc вне форума
Member
 
Сообщений: 32
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 15.10.2004
По умолчанию 31.10.2005, 12:35

При расположении в окне двух вложенных видов, один из которых FormViews.View, а второй Views.View, между ними и между каждым из них и окном остается зазор. Как с ним справиться? В модуле FormViews есть метод SetBorder(..), который должен этим делом заниматься, но он же сравнивает заданные значения с некторым минимальным, которое установлено в этом же модуле и равно 4*Ports.point. Т.е. обойти это уже нельзя?
Ответить с цитированием
Ads
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Можно ли поместить Bitmap в Memo и сделать его прозрачным Aziz C++ Builder 4 02.07.2010 03:26
Можно ли через ADSL подключение подключить к интернету еще одно устройство? Татарин Любые вопросы от новичков 2 13.05.2010 23:32
Касперский нашел вирус, удалить не может, можно ли его поместить в карантин? CJинг Любые вопросы от новичков 20 05.05.2008 07:47
Можно ли устанавливать память от разных производителей? Stef PRO Техническая поддержка 12 10.03.2008 20:42
Как можно поместить иконку приложения в трее sq-Weezee C++ Builder 3 01.03.2006 12:33
Как создать только одно дочернее окно zettambov Visual C++ 3 17.02.2006 16:38
Как JPEG файл поместить в таблицу чтобы его можно было прочитать Andykar C++ Builder 2 27.01.2006 23:42
Как поместить flash в окно C++ с помощью mfc Dmitrije Visual C++ 3 15.01.2006 16:04
Можно ли поместить одну карттинку поверх другой Rewik DHTML, JavaScript, VBScript 1 18.08.2005 15:16
Где можно накачать разных компонентов Juliya Delphi 5 08.01.2003 18:42
Можно ли поместить wav файл на модем ZyXEL U-336 E Winner C++ Builder 0 03.10.2002 20:08



Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Нardforum.ru - компьютерный форум и программирование, форум программистов