Автор Тема: [Элементы GUI] ProgressBarEx.au3 (UDF для создания прогресс бара из текстур)  (Прочитано 5738 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн FlatX007 [?]

  • Осваивающий
  • **
  • Сообщений: 174
  • Репутация: 33
  • Пол: Мужской
  • Tattoo!
    • Награды
AutoIt: 3.3.6.0
Версия: 1.00

Категория: Элементы GUI, GDI+

Описание: UDF для создания прогресс бара из текстур, в комплекте со скриптом идёт 9 градиентных текстур.
Возможности: Создание "градиентных", как вертикальных так и горизонтальных прогресс баров, можно использовать свои текстуры.

Код / Простой пример №1:
(нажмите для показа/скрытия)

Код / Пример №2:
(нажмите для показа/скрытия)

Код / Пример №3 (Изображения берутся из ресурсов) :
(нажмите для показа/скрытия)

Файл: Архив с утилитами отдельным файлом  пароль - autoit-script.ru
Файл: ProgressBarEx.7z


Снимок:


История версий: Релиз
Автор(ы): FlatX007, помощь по GDI+ Yashied
« Последнее редактирование: Май 10, 2010, 12:18:05 от FlatX007 »
...что можно узнать статус выполнения другой функции если в ней не включена возможность об отчете о том что она делает до того момента как она отработает

Русское сообщество AutoIt


Оффлайн FlatX007 [?]

  • Осваивающий
  • **
  • Сообщений: 174

  • Автор темы
  • Репутация: 33
  • Пол: Мужской
  • Tattoo!
    • Награды
Найдена одна досадная недоработка.

При повторения цикла (0% - 100% - 0% - 100% прогресса) растёт количество используемой памяти.
Я не понимаю из за чего, я пробовал устранить у меня не получилось.

Может кто посмотрит ?

Оффлайн Kaster [?]

  • Бритва, Бритва Оккама
  • Глобальный модератор
  • *
  • Сообщений: 4020
  • Репутация: 622
  • Пол: Мужской
  • Мой Аватар, он лучший самый
    • Награды
  • Версия AutoIt: 3.3.14.0
FlatX007
ты бы привел код где это происходит, или указал какой из примером в шапке.
Конференция посвященная AutoIt на jabber.ru - [email protected]
Как попасть на конференцию читаем тут


Оффлайн FlatX007 [?]

  • Осваивающий
  • **
  • Сообщений: 174

  • Автор темы
  • Репутация: 33
  • Пол: Мужской
  • Tattoo!
    • Награды
(нажмите для показа/скрытия)

Русское сообщество AutoIt


Оффлайн Yashied [?]

  • AutoIt MVP
  • Глобальный модератор
  • *
  • Сообщений: 5379
  • Репутация: 2696
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.x.x
Трудно сказать почему именно происходит утечка памяти, нужно тщательно все тестировать... Мне сейчас влом этим заниматься. Но если ты заменишь следующую строку в функции _ProgressSetEx(), то все будет OK.

Код: AutoIt [Выделить]
;GUICtrlSetImage($hID_PIC[$i][$IndexArrayStart], "")
__SetImage($hID_PIC[$i][$IndexArrayStart], 0)



Думай, прежде чем говорить.

Оффлайн FlatX007 [?]

  • Осваивающий
  • **
  • Сообщений: 174

  • Автор темы
  • Репутация: 33
  • Пол: Мужской
  • Tattoo!
    • Награды
Трудно сказать почему именно происходит утечка памяти, нужно тщательно все тестировать... Мне сейчас влом этим заниматься. Но если ты заменишь следующую строку в функции _ProgressSetEx(), то все будет OK.

Код: AutoIt [Выделить]
;GUICtrlSetImage($hID_PIC[$i][$IndexArrayStart], "")
__SetImage($hID_PIC[$i][$IndexArrayStart], 0)


Пробовал даже так ... память всё равно утекает  :blink:
Код: AutoIt [Выделить]
                    $h_Bitmap = _GDIPlus_BitmapCreateHBITMAPFromBitmap($ahIMAGE[$iImage][$ImageNormal])
                    __SetImage($hID_PIC[$i][$IndexArrayStart], $h_Bitmap) ;1
                    _WinAPI_DeleteObject($h_Bitmap)


Оффлайн Yashied [?]

  • AutoIt MVP
  • Глобальный модератор
  • *
  • Сообщений: 5379
  • Репутация: 2696
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.x.x
Память утекает при использовании GUICtrlSetImage(..., "") с пустой строкой. Функция убивает картинку в контроле, но почему-то не освобождает HBITMAP. Почему так - х.з. Если ты сделаешь то, что я посоветовал, то утечек не будет. Будь внимательнее.

Оффлайн FlatX007 [?]

  • Осваивающий
  • **
  • Сообщений: 174

  • Автор темы
  • Репутация: 33
  • Пол: Мужской
  • Tattoo!
    • Награды
Да точно всё заработало ... немного погодя обновлю архив.

Русское сообщество AutoIt


 

Похожие темы

  Тема / Автор Ответов Последний ответ
4 Ответов
4210 Просмотров
Последний ответ Февраль 25, 2010, 23:21:04
от Luke
6 Ответов
4130 Просмотров
Последний ответ Июль 28, 2012, 11:43:29
от CreatoR
3 Ответов
2721 Просмотров
Последний ответ Июль 31, 2012, 00:34:23
от FullZero
3 Ответов
1233 Просмотров
Последний ответ Февраль 13, 2015, 11:34:45
от madmasles
7 Ответов
7756 Просмотров
Последний ответ Май 29, 2018, 02:07:28
от WSWR
7 Ответов
2287 Просмотров
Последний ответ Ноябрь 26, 2015, 01:12:07
от Yura
2 Ответов
1369 Просмотров
Последний ответ Декабрь 29, 2016, 02:06:08
от qqww22
4 Ответов
350 Просмотров
Последний ответ Апрель 14, 2018, 07:26:02
от АндрейVirus
7 Ответов
480 Просмотров
Последний ответ Август 02, 2018, 15:16:26
от hedji
5 Ответов
329 Просмотров
Последний ответ Август 05, 2018, 23:09:14
от arabnesso