Форум программистов CodeGuru
22 Июнь 2018, 17:30:35 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.

Войти
Новости:
 
   Начало   Помощь Войти Регистрация  
Страниц: [1]   Вниз
  Печать  
Автор Тема: Интерфейс приложения  (Прочитано 14091 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Andriy_abc
Новичок
*
Офлайн Офлайн

Сообщений: 3


Просмотр профиля
« : 10 Ноябрь 2014, 17:22:06 »

Пожалуйста, помогите общей подсказкой.

Есть примитивное приложение, интерфейс которого содержит набор кнопок, каждая из которых открывает определенную web-страничку (используется елемент webBrowser MS Visual Studio, C++ ).

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

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

Большое спасибо заранее.
Записан
3V
Администратор
Ветеран
*****
Офлайн Офлайн

Сообщений: 1347



Просмотр профиля WWW
« Ответ #1 : 10 Ноябрь 2014, 20:19:04 »

А обязательно использовать файл ?
Может быть, в реестре удобнее было бы хранить настройки ?

У базового класса приложения CWinApp есть методы: GetProfileInt, GetProfileString, GetProfileBinary, WriteProfileInt, WriteProfileString, WriteProfileBinary (по ссылкам - примеры) для чтения и записи параметров приложения. Также есть метод SetRegistryKey для указания имени раздела в реестре в HKEY_CURRENT_USER\Software\, куда будут сохраняться параметры.

Ну если надо именно в файл, то можно либо свой файл создавать и записывать/читать его (и самому парсить), либо использовать какую-нибудь библиотеку (их множество - см. в гугле), либо использовать api windows для работы с ini-файлами (собственно, это функции GetPrivateProfileString и WritePrivateProfileString).
Записан

Andriy_abc
Новичок
*
Офлайн Офлайн

Сообщений: 3


Просмотр профиля
« Ответ #2 : 12 Ноябрь 2014, 19:23:37 »

Спасибо большое очень помогло, пожалуйста подскажите как привязать размер элемента webbrowser к размеру окна, для синхронного масштабирования? Еще раз большое спасибо.                        
Записан
3V
Администратор
Ветеран
*****
Офлайн Офлайн

Сообщений: 1347



Просмотр профиля WWW
« Ответ #3 : 12 Ноябрь 2014, 21:25:30 »

Можно добавить обработчик сообщения WM_SIZE (в MFC это CWnd::OnSize) и в нем изменять размеры и положение дочернего окна так как нужно (по последней ссылке есть пример).

Если надо изменять размеры сразу нескольких дочерних окон, то для подавления визуальных эффектов, связанных с последовательным изменением их размеров/положения, можно пользоваться API-функциями BeginDeferWindowPos / DeferWindowPos / EndDeferWindowPos.
Записан

Страниц: [1]   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2015, Simple Machines Valid XHTML 1.0! Valid CSS!