|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
28.03.2013, 18:39 | #21 |
Пользователь
Регистрация: 13.01.2013
Сообщений: 94
|
Слишком это для меня непонятно(
Вот я объявил структуру для хранения номера окна, расположения файла, и текста из файла. Код:
Код:
|
28.03.2013, 20:13 | #22 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,331
|
Сделайте проще:
Глобальный массив из структур документа. Тем самым будет лимит на количество открытых документов но думаю это можно пережить. Далее, одно из полей структуры - HWND окна. Когда нужно найти структуру, просматривайте весь масив, пока не найдете нужное окно. Будет легче использовать HWND окна, чем номер. |
28.03.2013, 21:39 | #23 |
Пользователь
Регистрация: 13.01.2013
Сообщений: 94
|
Я уж было начал делать, но ведь столько мороки будет по сортировке массива структур плюс поиск структуры при каждом обращении к документу.. Прошлый способ мне больше нравится.
Объясните пожалуйста как при создании структуры нового окна сделать её индивидуальной, ведь она постоянно создаётся как Struct1 и в итоге у меня есть только одна эта структура, сколько бы окон я не создавал. И как в моём случае использовать SetWindowLongPtr? переменную int nOkna я заменил на HWND Handle, но нужна ли она вообще? |
28.03.2013, 23:25 | #24 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,331
|
struct mystruct* ptr = malloc(sizeof(mystruct));
SetWindowLongPtr(hWnd, GWLP_USERDATA, LPARAM(ptr)); |
02.04.2013, 11:23 | #25 |
Пользователь
Регистрация: 13.01.2013
Сообщений: 94
|
Хоть это и не относится к апи, думаю, не стоит создавать новую тему.
Вот то немногое, что появилось в коде: Код:
В последней строчке, как я понял, нужно ставить hChild так как mystruct принадлежит текущему дочернему окну. Пожалуйста, объясните подробно как нужно делать и что делает код из Вашего примера. Последний раз редактировалось x_Alex_x; 02.04.2013 в 11:29. |
02.04.2013, 13:50 | #26 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,331
|
Может у вас расширение файла cpp?
Измените на .с |
02.04.2013, 15:28 | #27 |
Пользователь
Регистрация: 13.01.2013
Сообщений: 94
|
Изменение ни на что не повлияло.
объясните плз что к чему Mystruct* ptr может правельнее Mystruct *ptr или неважно? |
02.04.2013, 15:29 | #28 |
Пользователь
Регистрация: 13.01.2013
Сообщений: 94
|
Изменение ни на что не повлияло.
объясните плз что к чему Mystruct* ptr может правельнее Mystruct *ptr или неважно? |
02.04.2013, 17:52 | #29 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,331
|
struct Mystruct* ptr = (struct Mystruct*) malloc(sizeof(mystruct));
Кстати, зачем нужна переменная mystruct? sizeof() может работать с типом переменной. сравните: int var; sizeof(var); sizeof(int); |
02.04.2013, 21:42 | #30 | |
Пользователь
Регистрация: 13.01.2013
Сообщений: 94
|
Цитата:
Может нужно так: malloc(sizeof(Mystruct)) struct Mystruct {}- так ведь объявляется структура, а так Mystruct mystruct1 она создаётся? Получается я при создании окна hChild объявляю структуру Mystruct. только зачем? Ведь здесь нужно её создавать, делать на неё указатель и присоединять её к созданному hChild. struct Mystruct* ptr = (struct Mystruct*) malloc(sizeof(mystruct)); Можно расшифровку по-русски? |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
WinApi и С/С++ разные вещи | Sylar9 | Общие вопросы C/C++ | 2 | 27.03.2012 23:41 |
завернуть флеш в учу оболочку | gufon | Общие вопросы Delphi | 3 | 20.07.2011 07:13 |
учу borland С++ builder 6 | Dazzl | C++ Builder | 3 | 13.05.2011 18:01 |
Учу Си++ под Linux, необходима помощь | prog16 | Свободное общение | 12 | 09.08.2009 15:15 |
Разные вопросы о Delphi | Enko | Помощь студентам | 21 | 10.09.2007 05:54 |