Реализация диалогового окна Windows с вкладками в C - PullRequest
0 голосов
/ 07 октября 2010

Справочная информация:
Я унаследовал проект, около 10 тысяч мест, в котором реализован драйвер odbc. Для настройки драйвера открывается окно конфигурации. Окно конфигурации определяется файлом .rc (скрипт ресурса), который определяет все кнопки и флажки, используя координаты x, y.

До сих пор при добавлении новой функции я просто копировал / вставлял другую кнопку / флажок, изменяя имена переменных и коды идентификаторов, это работало довольно хорошо. В последнее время панель стала слишком монолитной, и было решено, что панель конфигурации должна быть пересмотрена. Новый дизайн будет разделять параметры на вкладки, вместо того, чтобы размещать их все на одной странице.

Проблема:
Мне нужно выяснить, как реализовать диалоговое окно Windows с вкладками. Я гуглил, пытался найти примеры, и безуспешно пытался понять это. Я могу открыть файл .rc в Visual Studio (проект изначально НЕ разрабатывался в Visual Studio), и он показывает мне хорошее визуальное представление панели конфигурации, я могу перетаскивать элементы вокруг, и это прекрасно изменяет файл .rc. То, что я не могу понять, как это сделать, это заставить работать вкладки. Я могу создать вкладку, но я ничего не могу с ней сделать. Я не могу понять, как поместить другие объекты на разные вкладки элемента управления вкладками.

То, что я в идеале ищу, - это чрезвычайно лаконичный пример реализации этого (диалоговое окно с минимум двумя вкладками и хотя бы одним элементом на каждой вкладке) в C. С этого момента я могу абстрагировать все остальное. Если это невозможно найти, указатель на исчерпывающий учебник о том, как реализовать диалоговое окно с вкладками, вероятно, будет следующей лучшей вещью. Я нашел учебники в C #, но остальная часть драйвера, который взаимодействует с панелью конфигурации, написана на C.

Ответы [ 2 ]

2 голосов
/ 07 октября 2010

Здесь есть объяснения и примеры: http://msdn.microsoft.com/en-us/library/ff486050(v=VS.85).aspx

0 голосов
/ 28 января 2011

Ответ был найден здесь: http://msdn.microsoft.com/en-us/library/bb760551(v=vs.85).aspx, но примеры нуждались во взломе, чтобы заставить их работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...