Как сделать так, что бы находящийся jpg-файл стал фоном в окне Pure Basic?
Фон
Страница: 1
Сообщений 1 страница 6 из 6
Поделиться302.09.2012 11:52:04
OPBR написал(а):
Как сделать так, что бы находящийся jpg-файл стал фоном в окне Pure Basic?
В простейшем случае, размешаешь ImageGadget в окне, делаешь его не активным (функция DisableGadget()), загружаешь в него рисунок.
Пример. http://pure-basic.narod.ru/forum/Back_Image.rar
Поделиться402.09.2012 13:43:41
Код:
SetClassLongPtr_(WindowID(0), #GCL_HBRBACKGROUND, CreatePatternBrush_(ImageID(0))) InvalidateRect_(WindowID(0), 0, 1)
Этот код ставит изображение ImageID(0) как фон у окна WindowID(0). Если нужен именно фон окна, то имхо, это лучший способ, даже лучше ImageGadget()'а.
Поделиться514.03.2014 00:25:57
Как сделать так, что бы находящийся jpg-файл стал фоном в окне Pure Basic?
А для линукса есть что то подобнее?
Код:
SetClassLongPtr_(WindowID(0), #GCL_HBRBACKGROUND, CreatePatternBrush_(ImageID(0))) InvalidateRect_(WindowID(0), 0, 1)
Поделиться616.03.2014 15:37:29
Вот дали за бугром
Код:
Procedure SetWindowBackgroundImage(hWnd.I, hImage.I) CompilerSelect #PB_Compiler_OS CompilerCase #PB_OS_Linux Protected *Background, FixedBox.I, *Style.GtkStyle gdk_pixbuf_render_pixmap_and_mask_(hImage, @*Background, 0, 0) *Style = gtk_style_new_() *Style\bg_pixmap[0] = *Background FixedBox = g_list_nth_data_(gtk_container_get_children_(gtk_bin_get_child_(hWnd)), 0) gtk_widget_set_style_(FixedBox, *Style) CompilerCase #PB_OS_Windows SetClassLongPtr_(hWnd, #GCL_HBRBACKGROUND, CreatePatternBrush_(hImage)) InvalidateRect_(hWnd, 0, #True) CompilerEndSelect EndProcedure If LoadImage(0, #PB_Compiler_Home + "examples/sources/Data/Geebee2.bmp") = #False Debug "Error loading background image" Else OpenWindow(0, 270, 100, 254, 260, "With background image", #PB_Window_SizeGadget) SetWindowBackgroundImage(WindowID(0), ImageID(0)) ButtonGadget(0, 90, 116, 74, 25, "Click me!") Repeat Select WaitWindowEvent() Case #PB_Event_CloseWindow Break Case #PB_Event_Gadget If EventGadget() = 0 Debug "Button was clicked!" EndIf EndSelect ForEver EndIf
Страница: 1
Похожие темы
(WinAPI) Не удаётся сделать фон AVI анимации прозрачным | PureBasic для Windows | 11.12.2023 |
Захотел создать канвас | PureBasic для Windows | 28.01.2024 |
Браузер на PureBasic | Вопросы по PureBasic | 08.02.2010 |
Вопросы новичка | Вопросы по PureBasic | 23.12.2010 |
Рисованный интерфейс программы | Вопросы по PureBasic | 05.06.2012 |