Поиск:

Ответ в темуСоздание новой темы Создание опроса
> ribbon ui + вкладки с++ 
:(
    Опции темы
jone31
  Дата 14.1.2013, 14:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 343
Регистрация: 29.11.2008

Репутация: нет
Всего: нет



всем привет. 

сразу скажу в с++ я начинающий, IDE - VS 2010 pro.

в общем переписываю приложение которое было в классике, т.е. вверху системное меню, там выбираем действие открывается окно с этим действием. 

хочу переписать его на вкладки.

вверху ribbon лента, под ней вкладки... (см. скриншот)

начитал мануалов но немогу понять, изначально эти вкладки предназначены были для открытия файлов... 

уже несколько дней пытаюсь понять как засунуть во вкладку мой контент... и уже стал подумывать что это невозможно...

и при нажатии на ribbon кнопку выполняет выборку запрошенных действий... почти все действия связаны с изменением данным -> т.е. это будут формы... 

с обычными окнами проблем не возникало... а вот как засунуть во вкладку форму...  не могу разобраться...

Добавлено через 53 секунды
на скриншоте как у меня щас оно выглядит...

Добавлено через 4 минуты и 48 секунд
PS как навесить действие на ribbon кнопку я знаю, нужен именно совет как открыть вкладку с моей формой

Присоединённый файл ( Кол-во скачиваний: 22 )
Присоединённый файл  Без_имени_1_копия.GIF 25,52 Kb
PM MAIL   Вверх
jone31
  Дата 14.1.2013, 20:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 343
Регистрация: 29.11.2008

Репутация: нет
Всего: нет



если я правильно понял из доков: то создать шаблон страницы в конструкторе не получится. 

выходит что при клике нужно создать пустое окно и в него вставить всю форму... 
Код

int CChildFrame::OnCreate(LPCREATESTRUCT lpCreateStruct){
    m_btn1.Create(_T("My button"), WS_CHILD|WS_VISIBLE|
    BS_PUSHBUTTON, CRect(10,10,100,30), this, 1);
   ......
}


и это получится  велосипед... ((((

неужели нету ничего такого штатного, что бы сразу все сделать как в диалогах ?

Это сообщение отредактировал(а) jone31 - 14.1.2013, 20:03
PM MAIL   Вверх
Dem_max
Дата 14.1.2013, 20:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1780
Регистрация: 12.4.2007

Репутация: 1
Всего: 39



Создавай свой диалог или что то еще в   OnCreate


--------------------
Американские программисты долго не могли понять, почему русские при зависании Windоws всё время повторяют "Твой зайка написал" ("Yоur bunnу wrоte")
PM MAIL   Вверх
jone31
  Дата 14.1.2013, 20:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 343
Регистрация: 29.11.2008

Репутация: нет
Всего: нет



Цитата(Dem_max @  14.1.2013,  20:11 Найти цитируемый пост)
Создавай свой диалог или что то еще в   OnCreate

зачем мне создавать диалог, если я пытаюсь с них перейти на использование вкладок ?

Добавлено через 8 минут и 38 секунд
если просто вызывать .doModal() - то открывается диалогом... 

или его можно как то под видом дочернего окна открыть ?

это было бы замечательно, т.к. сами формы диалогов имеются... 
PM MAIL   Вверх
Dem_max
Дата 15.1.2013, 04:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1780
Регистрация: 12.4.2007

Репутация: 1
Всего: 39



Цитата

зачем мне создавать диалог, если я пытаюсь с них перейти на использование вкладок ?


Цитата

и это получится  велосипед... ((((

неужели нету ничего такого штатного, что бы сразу все сделать как в диалогах ?


ты сам себе противоречишь.


--------------------
Американские программисты долго не могли понять, почему русские при зависании Windоws всё время повторяют "Твой зайка написал" ("Yоur bunnу wrоte")
PM MAIL   Вверх
jone31
  Дата 15.1.2013, 17:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 343
Регистрация: 29.11.2008

Репутация: нет
Всего: нет



Цитата(Dem_max @  15.1.2013,  04:27 Найти цитируемый пост)
ты сам себе противоречишь.

под "как в диалогах" я имел ввиду: как диалог создать к конструкторе форму и открыть её не в диалоге, а в вкладке главного окна.

нечто похожего я добился:
Код
Form4->ManualDock(mainPage->PageControl1, NULL, alClient);
Form4->DragMode = dmManual;
Form4->Show();

почти всё устраивает, кроме того что когда я вызываю закрытие вкладки оно не срабатывает...
на форме4 кнопка по которой вкладка должна быть закрыта
Код

void __fastcall TFormAdd::Button1Click(TObject *Sender)
{
mainPage->PageControl1->ActivePage->Free();
}

при нажатии кнопки вылетает ошибка access violaion и больше ничего не происходит...

подскажите что я делаю не так?

Добавлено через 13 минут и 4 секунды
при 
Код
mainPage->PageControl1->ActivePage->Caption = "123";

тоже ошибка доступа к памяти... 

и ещё вопрос как можно получить номер только что созданной вкладки? что бы потом её закрыть по pages[i] 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема »


 




[ Время генерации скрипта: 0.0655 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.