Что нового

[Окна, Диалоги] Не включается иконки, и поля заполнения

Alesha Popovich

Новичок
Сообщения
36
Репутация
0
Здравствуйте, я делаю лаунчер, в моем лаунчере есть фон, (BITMAP), который добавлен в ресурс .exe файла, и 2 поля заполнения (Логин,Пароль), и 3 кнопки:
-Перейти на форум
-Авторизация
-Регистрация
После открытия лаунчера, не видно кнопок и полей для заполнения, после того как проведешь курсором по месту расположения этих объектов, они так сказать "проявляются", пробовал менять местами "создание" этих объектов, если ставить создание кнопок и полей, а потом уже создание фона, кнопки видно сразу после открытия, но они не реагируют не на какие действия (нельзя "кликнуть" на них), если ставлю создание фона, а потом создание объектов выше перечисленных, происходит то что я описал выше, а именно появляются при наведении на их координаты на экране. Что делать, подскажите. Заранее спасибо.

Код:
#Region
#AutoIt3Wrapper_Res_File_Add=csgo.bmp, 2, 1488
#EndRegion

#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <GDIPlus.au3>
#Include <WinAPIEx.au3>
#Include <Icons.au3>

#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Launcher COD:GO", 768, 505, 291, 113)
$login1 = GUICtrlCreateInput("Логин", 256, 280, 257, 21)
$password1 = GUICtrlCreateInput("Пароль", 256, 232, 257, 21)
$Button1 = GUICtrlCreateButton("Авторизироваться", 272, 312, 225, 49, $BS_BITMAP)
$Button2 = GUICtrlCreateButton("Регистрация", 272, 360, 113, 17, $BS_BITMAP)
$Button3 = GUICtrlCreateButton("Перейти на форум", 384, 360, 113, 17, $BS_BITMAP)
GUICtrlSetImage($Button1, @ScriptDir & '\' & 'button1second.bmp')
$hInstance = _WinAPI_GetModuleHandle(0)
$hBitmap = _WinAPI_LoadBitmap($hInstance, 1488)
$Pic1 = GUICtrlCreatePic("", 0, 0, 200, 200)
_SetHImage($Pic1, $hBitmap)
_WinAPI_DeleteObject($hBitmap)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,323
Alesha Popovich,
Попробуйте добавить строку.
Код:
;~ ...
$Pic1 = GUICtrlCreatePic("", 0, 0, 200, 200)
_SetHImage($Pic1, $hBitmap)
_WinAPI_DeleteObject($hBitmap)
GUICtrlSetState($Pic1, $GUI_DISABLE);эту
;~ ...
 
Автор
A

Alesha Popovich

Новичок
Сообщения
36
Репутация
0
Не помогло. Может быть стоит обратить внимание на это
Код:
GUISetState(@SW_SHOW)

или на то что у меня в
Код:
$Button3 = GUICtrlCreateButton("Перейти на форум", 384, 360, 113, 17, $BS_BITMAP)

прописано $BS_BITMAP, а в
Код:
GUICtrlSetState($Pic1, $GUI_DISABLE)

Прописано $GUI_DISABLE.
Что делать?
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,323
Alesha Popovich
Выкладывайте весь (работоспособный) код и прикрепляйте Вашу картинку csgo.bmp.
 
Автор
A

Alesha Popovich

Новичок
Сообщения
36
Репутация
0
Что вы забыли на этом форуме? Уважаемый администратор. Я выложил код создание элементов, дальше только код действия при нажатии кнопки. Если вы не можете помочь, не нужно это скрывать под какими то непонятными предлогами. Кроме вас есть и другие люди.
 

C2H5OH

AutoIT Гуру
Сообщения
1,473
Репутация
333
Alesha Popovich,
для того чтобы попытаться Вам помочь, код Ваш надо запустить и посмотреть что получится.
Для этого нужно:
- дописать Ваш код до логического завершения (до работоспособного варианта), чтобы он хотя бы начал запускаться.
- найти картинку в нужном формате, подогнать её до нужного размера.

Даже если кто-то хочет Вам помочь, зачем ему делать столько лишних телодвижений? Ради чего.
Для того чтобы увидеть что какой-то скрипт (не тот на котором зафиксирована проблема) прекрасно работает с какой-то картинкой (не той на которой зафиксирована проблема) ??

Alesha Popovich, Вы хотите чтобы Вам помогли? Тогда постарайтесь облегчить задачу тех кто захочет это сделать.
 

firex

AutoIT Гуру
Сообщения
943
Репутация
208
Alesha Popovich
Код:
GUISetState(@SW_SHOW)
;Эквивалентны
_WinAPI_ShowWindow( $hWnd, @SW_SHOW )


После вызова этой функции с флагом SW_SHOW происходит отрисовка окна и всех его контролов, однако, нам важен порядок. В вашем случае Pic получит последнее место в этой очереди. Смекаете?

Вариант 1:
Код:
#Include <WindowsConstants.au3>
#Include <GUIConstantsEx.au3>

$hForm = GUICreate('', 200, 200, -1, -1, $WS_POPUP)

GUICtrlCreatePic(@AutoItExe & "\..\Examples\GUI\msoobe.jpg", 0, 0, 780, 340)
GUICtrlSetState(-1, $GUI_DISABLE)

$iEdit = GUICtrlCreateInput( "Hello", 5, 5, 100, 22 )
GUISetState()

Do
Until GUIGetMsg() = -3


Вариант 2:
Код:
#Include <WindowsConstants.au3>
#Include <GUIConstantsEx.au3>

$hForm = GUICreate('', 200, 200, -1, -1, $WS_POPUP)
GUISetState()

GUICtrlCreatePic(@AutoItExe & "\..\Examples\GUI\msoobe.jpg", 0, 0, 780, 340)
GUICtrlSetState(-1, $GUI_DISABLE)

$iEdit = GUICtrlCreateInput( "Hello", 5, 5, 100, 22 )

Do
Until GUIGetMsg() = -3


И еще, в будущем старайтесь проявлять больше уважения. Вы не центр вселенной и ваш код не представляет никакой ценности, так что не вижу смысла "скрывать" его от остальных.
 
Автор
A

Alesha Popovich

Новичок
Сообщения
36
Репутация
0
firex сказал(а):
Alesha Popovich
Код:
GUISetState(@SW_SHOW)
;Эквивалентны
_WinAPI_ShowWindow( $hWnd, @SW_SHOW )


После вызова этой функции с флагом SW_SHOW происходит отрисовка окна и всех его контролов, однако, нам важен порядок. В вашем случае Pic получит последнее место в этой очереди. Смекаете?

Вариант 1:
Код:
#Include <WindowsConstants.au3>
#Include <GUIConstantsEx.au3>

$hForm = GUICreate('', 200, 200, -1, -1, $WS_POPUP)

GUICtrlCreatePic(@AutoItExe & "\..\Examples\GUI\msoobe.jpg", 0, 0, 780, 340)
GUICtrlSetState(-1, $GUI_DISABLE)

$iEdit = GUICtrlCreateInput( "Hello", 5, 5, 100, 22 )
GUISetState()

Do
Until GUIGetMsg() = -3


Вариант 2:
Код:
#Include <WindowsConstants.au3>
#Include <GUIConstantsEx.au3>

$hForm = GUICreate('', 200, 200, -1, -1, $WS_POPUP)
GUISetState()

GUICtrlCreatePic(@AutoItExe & "\..\Examples\GUI\msoobe.jpg", 0, 0, 780, 340)
GUICtrlSetState(-1, $GUI_DISABLE)

$iEdit = GUICtrlCreateInput( "Hello", 5, 5, 100, 22 )

Do
Until GUIGetMsg() = -3


И еще, в будущем старайтесь проявлять больше уважения. Вы не центр вселенной и ваш код не представляет никакой ценности, так что не вижу смысла "скрывать" его от остальных.
Спасибо вам! Помогло.
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,323
Alesha Popovich,
Предупреждение За нарушение общих правил (пункт В.2):
Старайтесь избегать “Over quoting” (преувеличенное цитирование) - цитируйте только необходимую часть сообщения, которая наилучшим образом подчеркнёт суть цитируемого.


С уважением, ваш Глобальный модератор.






Добавлено:
Сообщение автоматически объединено:

[info border=#0000ff float=left]На форуме принято помечать тему решенной после получения ответа на свой вопрос!
Вверху или внизу темы нажмите на ссылку такого вида:
package_old.gif
Тема не решена
[/info]
 
Верх