Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.06.2016, 14:33   #1
progster
 
Регистрация: 21.03.2016
Сообщений: 3
По умолчанию Удаление картинки с элемента.

День добрый!Не получается удалить картинку с элемента формы с помощью LoadPicture("") (процедура Sub click) . Помогите ,пожалуйста!


Dim b As Integer, l As Integer
Dim mas(7, 7) As Integer
Dim nH As Integer
Dim mNap(1, 3) As Integer
Dim masH(1, 3) As Integer
Dim RG As Integer
Dim CG As Integer

Private Sub i00_Click()
click 0, 0
End Sub

Private Sub i02_Click()
click 0, 2
End Sub

Private Sub i04_Click()
click 0, 4
End Sub

Private Sub UserForm_Initialize() 'Заполняет поле при старте игры
Dim i As Integer
Dim j As Integer
Dim st1 As String
mNap(0, 0) = -1: mNap(1, 0) = 0
mNap(0, 1) = 0: mNap(1, 1) = -1
mNap(0, 2) = 0: mNap(1, 2) = 1
mNap(0, 3) = 1: mNap(1, 3) = 0
nH = 0

For i = 0 To 3
For j = 0 To 3
st1 = "i" & i & j
Controls(st1).Picture = ris2.Picture
mas(i, j) = 1
Next j
Next i
For i = 4 To 7
For j = 4 To 7
st1 = "i" & i & j

Controls(st1).Picture = ris1.Picture
mas(i, j) = 10
Next j
Next i
End Sub


Sub click(R As Integer, C As Integer)
st1 = "i" & R & C
If Controls(st1).Picture = ris3.Picture Then
st2 = "i" & RG & CG
Controls(st2).Picture = LoadPicture("")

End If
If mas(R, C) = 0 Then Exit Sub
If mas(R, C) > 0 Then
For k = 0 To 3
nR = R + mNap(0, k)
nc = C + mNap(0, k)
If nR < 0 Or nR > 7 Or nc < 0 Or nc > 7 Then GoTo m1

If (mas(R + mNap(0, k), C + mNap(1, k))) > 0 Then
If (mas(R + 2 * mNap(0, k), C + 2 * mNap(1, k))) = 0 Then
masH(0, nH) = R + 2 * mNap(0, k)
masH(1, nH) = C + 2 * mNap(1, k)
nH = nH + 1
End If
End If
m1:
Next k
End If
For l = 0 To nH - 1
st1 = "i" & masH(0, nH - 1) & masH(1, nH - 1)
Controls(st1).Picture = ris3.Picture
RG = R
CG = C

Next l
End Sub
progster вне форума Ответить с цитированием
Старый 12.06.2016, 01:05   #2
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Код:
Set Controls(st2).Picture = Nothing
EducatedFool вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Удаление элемента из массива Bugrimov Помощь студентам 18 19.06.2013 11:28
Удаление элемента из массива, C#. umpik Помощь студентам 0 31.05.2013 02:14
Удаление элемента строки millepetrozza Общие вопросы C/C++ 4 20.11.2012 21:05
flowlayoutpanel: помещение картинки/элемента поверх панели andrew_jr20 C# (си шарп) 2 01.06.2011 23:28
удаление картинки delfin07 Помощь студентам 1 22.05.2011 16:57