Что нового

Как очистить GUICtrlCreatePic?

Mihail10

Новичок
Сообщения
18
Репутация
0
После удаления картинки из папки,она показывается в окне.Как её удалить?

Код:
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <GDIPlus.au3>
 
 
    GUICreate("окно", 800, 800, -1, -1) ; 
    GUISetBkColor(0xFFFFFF)	 
	
  While 1    
    $n = GUICtrlCreatePic( "1.jpg", 10, 10, 200, 200);
    GUISetState()	
	if(@sec==0 or @sec==5 or @sec==10 or @sec==15 or @sec==20 or @sec==25 or @sec==30 or @sec==35 or @sec==40 or @sec==45 or @sec==50 or @sec==55) Then $msg = GUIGetMsg()
		
  WEnd
 

joiner

Модератор
Локальный модератор
Сообщения
3,556
Репутация
628
Код:
GuiCtrlSetImage

Используем пустое значение
 
Автор
M

Mihail10

Новичок
Сообщения
18
Репутация
0
Нет,эта функция ничего не решила.Вот нашёл:

Код:
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <GDIPlus.au3>
 
 
    GUICreate("окно", 800, 800, -1, -1) ;
    GUISetBkColor(0xFFFFFF)  
   
  While 1    
    $n = GUICtrlCreatePic( "1.jpg", 10, 10, 200, 200);
    GUISetState()  
    $msg = GUIGetMsg()     
	 GUICtrlDelete($n)
 
  WEnd
 

joiner

Модератор
Локальный модератор
Сообщения
3,556
Репутация
628
что значит не решает?
все прекрасно работает
Код:
Local $Form1 = GUICreate("Form1", 261, 200, 192, 124)
Local $Pic1 = GUICtrlCreatePic("123.jpg", 16, 24, 212, 124)
GUISetState()
Sleep(3000)
GUICtrlSetImage($Pic1, '')
While 1
	Switch GUIGetMsg()
		Case -3
			Exit

	EndSwitch
WEnd

читай внимательно справку. ты в цикле постоянно создаешь элемента. Состояние окна тоже в цикле. Потрать время на изучение и не будет такого безобразия в коде
 
Автор
M

Mihail10

Новичок
Сообщения
18
Репутация
0
Если картинку убрать,она из формы убирается,а если вернуть,то не появляется.Вот так получше,но не то:

Код:
Local $Form1 = GUICreate("Form1", 800, 800, -1, -1)

While 1
    Local $Pic1 = GUICtrlCreatePic("1.jpg", 10, 20, 200, 200)
    GUISetState()
    Sleep(5000)
    GUICtrlSetImage($Pic1, '')

    Switch GUIGetMsg()
        Case -3
            Exit

    EndSwitch
WEnd


Слип 5сек, мешает.
 

joiner

Модератор
Локальный модератор
Сообщения
3,556
Репутация
628
Mihail10
значит, удаление картинки работает.это уже хорошо. что вообще ты хочешь от кода?
опиши задачу


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

в папке со скриптом картинка
запусти код, пробуй переименовать картинку
Код:
HotKeySet('{ESC}', '_exit')
Local $Form1 = GUICreate('Form1', 261, 200, 192, 124)
GUISetState()
Local $spic = '1.jpg', $Pic1
While 1
	Switch FileExists($spic)
		Case 0
			If $Pic1 Then
				GUICtrlDelete($Pic1)
				$Pic1 = 0
			EndIf
		Case 1
			If Not $Pic1 Then $Pic1 = GUICtrlCreatePic($spic, 16, 24, 212, 124)
	EndSwitch
	Sleep(1)
WEnd
Func _exit()
	Exit
EndFunc   ;==>_exit
 
Автор
M

Mihail10

Новичок
Сообщения
18
Репутация
0
joiner,спасибо,то что нужно было.

Догадаться сложно,и в справке нет.Так понимаю каждую милисекунду сначала удаляется картинка,потом загружается.
 

joiner

Модератор
Локальный модератор
Сообщения
3,556
Репутация
628
нет, пересоздается элемент Pic
если картинка есть, то создается элемент, если картинка не найдена - удаляется
элемент картинка создается один раз
 
Верх