none
Размещение контекста DirectX RRS feed

  • Вопрос

  • Здравствуйте. Скажите пожалуйста, можно ли контекст для DirectX создать не на Win32 API окне, а на элементе управления Panel? (Visual C++) Приношу извинения, если вопрос поставлен некорректно. Спасибо.
    23 апреля 2015 г. 21:01

Ответы

  • Как объявлена SetParent? Какие типы у ее параметров? IntPtr - это структура библиотеки .NET. Если функция требует HWND, то передавать ей IntPtr напрямую нельзя. У IntPtr есть методы, возвращающие либо int, либо void*. Попробуйте их использовать:

    SetParent(Wnd, (HWND)form->getHandle().ToPointer());


    Если сообщение помогло Вам, пожалуйста, не забудьте отметить его как ответ данной темы. Удачи в программировании!

    24 апреля 2015 г. 12:07

Все ответы

  • Вообще-то Panel это обычное окно, его дескриптор можно получить через свойство Handle. 
    24 апреля 2015 г. 10:59
  • Окей, так и сделал:

    SetParent(Wnd,form->getHandle());

    вот только почему-то не принимает второй параметр. Метод getHandle() описал как:

    IntPtr getHandle(){

    return panel1->Handle;

    }

    Пишет, мол несовместимы типы, но ставлю остатки своей стипендии, что видел, как такое работало.



    24 апреля 2015 г. 11:57
  • Как объявлена SetParent? Какие типы у ее параметров? IntPtr - это структура библиотеки .NET. Если функция требует HWND, то передавать ей IntPtr напрямую нельзя. У IntPtr есть методы, возвращающие либо int, либо void*. Попробуйте их использовать:

    SetParent(Wnd, (HWND)form->getHandle().ToPointer());


    Если сообщение помогло Вам, пожалуйста, не забудьте отметить его как ответ данной темы. Удачи в программировании!

    24 апреля 2015 г. 12:07
  • СПАСИБО!!! Пол года с этим бился!)
    24 апреля 2015 г. 17:31