Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [решено] Красивый интерфейс GUI

Ответить
Настройки темы
[решено] Красивый интерфейс GUI

Аватара для Nik_rus

Пользователь


Сообщения: 92
Благодарности: 8

Профиль | Отправить PM | Цитировать


Часто бывает что для клиента важна "оболочка" программы.
Столкнулся с проблемой - нужно сделать КНОПКУ (причем работающую ) из PNG файла. ( не помешало бы и другие типа edit и label...)
Но там мне "практически" ясно все (GDI udf...)
Но опять-же проблема - при сворачивании окна или становления его же неактивным картинки пропадают
Что делать ? Я пытался отлавливать сворачивание окна и прорисовывать заного, но иногда не срабатывало =( .
Я в упадке

Отправлено: 12:26, 07-08-2009

 

Аватара для FlatX007

Ветеран


Сообщения: 553
Благодарности: 87

Профиль | Отправить PM | Цитировать


Цитата Nik_rus:
Столкнулся с проблемой - нужно сделать КНОПКУ (причем работающую ) из PNG файла. »
В GUI окна в качестве изображений кнопок вставляются BMP картинки а не PNG

Гдето тут
http://forum.oszone.net/thread-143513.html

Отправлено: 16:02, 07-08-2009 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для Nik_rus

Пользователь


Сообщения: 92
Благодарности: 8

Профиль | Отправить PM | Цитировать


Изображения
Тип файла: png but.png
(4.4 Kb, 40 просмотров)

Дело в том что мне нужно сделать края кнопки прозрачными

-------
Бу! Мерзкий любитель кенгуру!


Отправлено: 16:12, 07-08-2009 | #3


Аватара для FlatX007

Ветеран


Сообщения: 553
Благодарности: 87

Профиль | Отправить PM | Цитировать


Выложи скрипта который ты уже написал ...

Отправлено: 16:19, 07-08-2009 | #4


Аватара для Nik_rus

Пользователь


Сообщения: 92
Благодарности: 8

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
#include <GUIConstants.au3>
#Include <GuiEdit.au3>
#include <GuiListBox.au3>
#include <GDIPlus.au3>
$dd="DarkDragon"
_GDIPlus_StartUp()
_CreateGuiFace($dd)
Func _CreateGuiFace($title)
	Global $main = GuiCreate($title, 640, 480)
	GuiSetState()
	;---Объявление и прорисовка---
	_DrawImgs()
	;---Рисуем фейс---
	_DrawCtrl()
	;---Loop---
	While 1
		If GUIGetMsg() = $GUI_EVENT_RESTORE Then
			Sleep(100)
			_DrawImgs()
		EndIf
		If GUIGetMsg() = $GUI_EVENT_CLOSE Then
			_ProgShutdown()
		EndIf
	WEnd
	;----------
EndFunc

Func _DrawImgs()
	Global $hGraphic = _GDIPlus_GraphicsCreateFromHWND($main)
	Global $bg = _GDIPlus_ImageLoadFromFile("Style\bg.png")
	_GDIPlus_GraphicsDrawImage($hGraphic, $bg, 0, 0)
	Global $plistbg = _GDIPlus_ImageLoadFromFile("Style\plist.png")
	_GDIPlus_GraphicsDrawImage($hGraphic, $plistbg, 485, 25)
	Global $bgchat = _GDIPlus_ImageLoadFromFile("Style\bgchat.png")
	_GDIPlus_GraphicsDrawImage($hGraphic, $bgchat, 26, 25)
	Global $messguibg = _GDIPlus_ImageLoadFromFile("Style\mess.png")
	_GDIPlus_GraphicsDrawImage($hGraphic, $messguibg, 26, 419)
	Global $but = GUICtrlCreateButton("Send", 545, 425,45,22)
	GUICtrlSetBkColor($but,0xb0b0b0)
	Global $butbg = _GDIPlus_ImageLoadFromFile("Style\but.png")
	_GDIPlus_GraphicsDrawImage($hGraphic, $butbg, 530, 420)
EndFunc

Func _DrawCtrl()
	Global $plist = GUICtrlCreateList( "Nik(rus)", 495, 35 ,110,365,0,2)
	_GUICtrlListBox_AddString($plist,"1234")
	GUICtrlSetBkColor($plist,0xb0b0b0)
	Global $editchat = GUICtrlCreateEdit("123", 35, 35, 410, 365,0x0040+0x0004+0x0800)
	GuiCtrlSetBkColor($editchat,0xb0b0b0)
	Global $messgui = GUICtrlCreateEdit("Message here", 44, 427, 445, 19,0)
	GUICtrlSetBkColor($messgui,0xb0b0b0)
EndFunc

Func _GDI_Shutdown()
	_GDIPlus_GraphicsDispose($hGraphic)
	_GDIPlus_ImageDispose($bg)
	_GDIPlus_ImageDispose($plistbg)
	_GDIPlus_ImageDispose($bgchat)
	_GDIPlus_ImageDispose($messguibg)
	_GDIPlus_ImageDispose($butbg)
	GUICtrlDelete($but)
EndFunc

Func _GUI_Shutdown()
	GUICtrlDelete($plist)
	GUICtrlDelete($editchat)
	GUICtrlDelete($messgui)
EndFunc

Func _ProgShutdown()
	_GDI_Shutdown()
	_GDIPlus_ShutDown()
	GUIDelete()
	Exit
EndFunc

-------
Бу! Мерзкий любитель кенгуру!


Отправлено: 16:21, 07-08-2009 | #5


Аватара для Nik_rus

Пользователь


Сообщения: 92
Благодарности: 8

Профиль | Отправить PM | Цитировать


Вложения
Тип файла: rar Style.rar
(144.7 Kb, 38 просмотров)

Вот вся папка со стилем

-------
Бу! Мерзкий любитель кенгуру!


Отправлено: 16:30, 07-08-2009 | #6


Аватара для FlatX007

Ветеран


Сообщения: 553
Благодарности: 87

Профиль | Отправить PM | Цитировать


Ой даже незнаю ты тут наворотил функций UDF ... я фиг знаю что с ними делать.

Помойму проще нарисовать ОбщийБэкграунд одним файлом , задисабить его (отключить) чтобы кнопки срабатывали которые поверх картинки и прорисовать всё остальное ...

Отправлено: 17:01, 07-08-2009 | #7


Аватара для Nik_rus

Пользователь


Сообщения: 92
Благодарности: 8

Профиль | Отправить PM | Цитировать


А как его собсно задисабить ?
Ну допустим я это сделал... но ведь если я нажму на кнопку она появится !
+ если свернуть то рисунок пропадет... как я раньше писал

-------
Бу! Мерзкий любитель кенгуру!


Отправлено: 17:45, 07-08-2009 | #8


Аватара для FlatX007

Ветеран


Сообщения: 553
Благодарности: 87

Профиль | Отправить PM | Цитировать


Тут ...

Последний раз редактировалось FlatX007, 07-08-2009 в 23:32.


Отправлено: 20:36, 07-08-2009 | #9


Аватара для Nik_rus

Пользователь


Сообщения: 92
Благодарности: 8

Профиль | Отправить PM | Цитировать


Ну вы видимо прониклись идеей проекта.
Однако самая важная проблема - кнопка та тут как тут (нужно чтобы её заменяла картинка или чтоб её не было видно, но она функционировала)

-------
Бу! Мерзкий любитель кенгуру!


Отправлено: 21:09, 07-08-2009 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [решено] Красивый интерфейс GUI

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Не работает GUI после выхода другова GUI sashadeg AutoIt 3 15-05-2009 22:03
Красивый счет постов Prisoner Флейм 46 25-01-2009 18:14
Command Line Gui Wrapper (Интерфейс любых любых dos/cmd программ) Stalingrad Автоматическая установка приложений 5 20-01-2009 16:02
Как нарисовать красивый шрифт? Den032 Программирование и базы данных 4 29-08-2006 19:52
Красивый и безопасный код в С hasherfrog Программирование и базы данных 8 13-07-2004 12:12




 
Переход