Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум на CrossPlatform.RU _ GTK+ _ HWND для VBox

Автор: Galina 17.2.2009, 12:19

Добрый день!
Не могли бы вы сказать как узнать HWND для VBox, если has_no_window()==true и =>gdk_win32_drawable_get_handle(vbox->get_window())неверно, так как vbox->get_window()== NULL.
Пробовала (HWND)gdk_win32_drawable_get_handle((GdkDrawable*)vbox->gobj()); возвращается 0, хотя (GdkDrawable*)vbox->gobj() != NULL.

Автор: Galina 17.2.2009, 13:43

Цитата(Galina @ 17.2.2009, 12:19) *
Добрый день!
Не могли бы вы сказать как узнать HWND для VBox, если has_no_window()==true и =>gdk_win32_drawable_get_handle(vbox->get_window())неверно, так как vbox->get_window()== NULL.
Пробовала (HWND)gdk_win32_drawable_get_handle((GdkDrawable*)vbox->gobj()); возвращается 0, хотя (GdkDrawable*)vbox->gobj() != NULL.

Еще пробовала GDK_WINDOW_HWND не помогло.. Тоже 0

Автор: ViGOur 17.2.2009, 14:19

А так:

#include <gdk/gdkwin32.h>

HWND hwnd_from_window(Gtk::Window& window)
{
  return reinterpret_cast<HWND>( GDK_WINDOW_HWND(window.get_window()->gobj()));
}
???

Еще можно попробовать:
#include <gdk/win32/gdkwin32.h>
GDK_DRAWABLE_XID(win)

Автор: Galina 17.2.2009, 17:04

Цитата(ViGOur @ 17.2.2009, 14:19) *
А так:
#include <gdk/gdkwin32.h>

HWND hwnd_from_window(Gtk::Window& window)
{
  return reinterpret_cast<HWND>( GDK_WINDOW_HWND(window.get_window()->gobj()));
}
???

Еще можно попробовать:
#include <gdk/win32/gdkwin32.h>
GDK_DRAWABLE_XID(win)

Большое спасибо за ответ!
return reinterpret_cast<HWND>( GDK_WINDOW_HWND(window.get_window()->gobj())); у меня не идет, т.к. get_window== NULL (т.к. has_no_window()== true)
Попробовала GDK_DRAWABLE_XID(win), но у меня с этим другая проблемы. У меня библиотека была без X11. Докачала. Нашла файл gdkx.h. Но теперь этот файл у меня не компилится, т.к. нет X11/Xlib.h и X11/Xutil.h. И я пока не могу их нигде найти..
Не знаете, где можно посмотреть?

Автор: ViGOur 17.2.2009, 20:25

Для X11/Xlib.h нужен xlibs-dev, а вот для X11/Xutil.h не знаю.

Автор: Galina 17.2.2009, 23:10

Цитата(ViGOur @ 17.2.2009, 20:25) *
Для X11/Xlib.h нужен xlibs-dev, а вот для X11/Xutil.h не знаю.

:) Может, еще есть какой способ! Хочется обойтись средствами GTK!

Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)