Board.KolibriOS.org

Официальный форум KolibriOS
Текущее время: Ср май 24, 2017 1:32 am

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 78 сообщений ]  На страницу 1 2 3 4 5 6 След.
Автор Сообщение
 Заголовок сообщения: Screenshooter
СообщениеДобавлено: Вт июн 06, 2006 3:08 pm 
Еще одна прога, при помощи которой можно сохранить содержимое экрана в KolibriOS:
Изображение
http://maxxxx32.narod.ru/scrshoot.7z
Пока не поддерживается востановление окна после сворачивания. При сохранении используется 70-я функция. Файл сохраняется в формат bmp.
Кстати GUI компоненты: editbox, label, checkbox можно без труда добавить к любой другой программе. Мигание при перерисовке сведено к минимуму.


Последний раз редактировалось Maxxxx32 Вт июн 13, 2006 5:25 pm, всего редактировалось 2 раза.

Вернуться к началу
   
 Заголовок сообщения:
СообщениеДобавлено: Вт июн 06, 2006 6:36 pm 
Maxxxx32
Хорошая функциональность, мне понравилось. Стоит, однако, написать, что нужно вводить не только имя файла, а полный путь вместе с именем.
Предложение насчет editbox:
1) Нужна корректная обработка клавиш Home и End, чтобы курсор перемещался соответственно к началу и в конец.
2) Было бы хорошо, если бы курсор моргал, но это не обязательно, в принципе и так удачно.
Удачи.


Вернуться к началу
   
 Заголовок сообщения:
СообщениеДобавлено: Вт июн 06, 2006 8:33 pm 
Mario79
Сделал все, кроме моргания. Ссылка таже.
Моргание можно сделать, если у KolibriOS появится функция, которая будет выполнять какой-либо фрагмент кода за определенные промежутки времени.


Вернуться к началу
   
 Заголовок сообщения:
СообщениеДобавлено: Вт июн 06, 2006 9:18 pm 
Не в сети

Зарегистрирован: Сб май 27, 2006 5:26 am
Сообщения: 100
В Колибри нет таймеров?


Вернуться к началу
 Заголовок сообщения:
СообщениеДобавлено: Ср июн 07, 2006 10:50 am 
Не в сети
Kernel Developer
Аватара пользователя

Зарегистрирован: Пн ноя 28, 2005 8:00 pm
Сообщения: 1601
При отсутствии моргания не тратится лишнего процессорного времени на моргание (да и размер кода уменьшается)...


Вернуться к началу
 Заголовок сообщения:
СообщениеДобавлено: Сб июн 10, 2006 11:32 am 
Обновил программу:
1) теперь поддерживаются длинные имена файлов (используется 70-я функция вместо 58-ой);
2) теперь можно самому задавать время задержки;
3) поддерживается автонумерация файлов;
4) улучшена обработка мышки в editbox.


Вернуться к началу
   
 Заголовок сообщения:
СообщениеДобавлено: Вс июн 11, 2006 8:49 pm 
Maxxxx32
Нужно написать текстовик к приложению. Я так и не смог запустить автосохранение с автонумерацией. Смог только одиночное сохранение с ручным вводом имени.


Вернуться к началу
   
 Заголовок сообщения:
СообщениеДобавлено: Вт июн 13, 2006 12:04 pm 
Mario79
Добавил readme.txt
Имя файла не генерируется полностью, просто в том месте имени файла, где стоит знак "*" (без кавычек) этот знак будет заменен на номер, котрый автоматически увеличивается при каждом сохранении. Например, если написать так /hd0/1/*.bmp, на жесткий диск запишется файл 00.bmp.

Размер editbox уменьшен на 40 байт.


Последний раз редактировалось Maxxxx32 Вт июн 13, 2006 5:43 pm, всего редактировалось 1 раз.

Вернуться к началу
   
 Заголовок сообщения:
СообщениеДобавлено: Вт июн 13, 2006 5:31 pm 
При сворачивании окно не перестает быть активным; если окно активно, функция активации окна его не восстанавливает. Единственное решение проблемы, которое я нашел, это сразу после сворачивания запускать "отвлекающий" поток, который дезактивирует главное окно.
Есть ли более красивое решение этой проблемы ?


Вернуться к началу
   
 Заголовок сообщения:
СообщениеДобавлено: Вт июн 13, 2006 7:03 pm 
Maxxxx32
Замечания насчет readme.txt
1) Обычно в нем написано кто автор;
2) Насчет имени в 264 символа, когда по стандарту FAT положено 260 символов, а в твоей программе можно ввести около 50 символов на весь путь. Где ты взял эту цифру?
3) Ctrl+PrintScrn - горячая клавиша. Не написано, какое действие она выполняет.

Теперь предложения по поводу программы:
1) Наверное, лучше сделать, чтобы, как только начал "фоткать", то вместо звездочки вставлялись цифры следующего сохраняемого файла.
2) Можно еще сделать режим полного автосохранения с параметром задержки между снимками. Потом можно будет из файлов сделать анимацию, но это так на будущее.

Не понял фразы:
Цитата:
При сворачивании окно не перестает быть активным; если окно активно, функция активации окна его не восстанавливает.

Первый раз слышу о таком. Даже когда окно активно через панель проводится его насильственная активация с восстановлением всех исходных параметров. Посылается событие через mcall 18,3.
Если я чего-то не так понял, то распиши максимально подробнее.
Если этот глюк проявился в эмуляторе, то это вина эмулятора, а не ядра.


Вернуться к началу
   
 Заголовок сообщения:
СообщениеДобавлено: Ср июн 14, 2006 1:16 pm 
Цитата:
в твоей программе можно ввести около 50 символов на весь путь

Не 50, а 255, хотя это тоже мало. Исправлю.

Цитата:
Если я чего-то не так понял, то распиши максимально подробнее.

Программы я пишу и тестирую в самой KolibriOS, а не в эмуляторе. Насколько я знаю, панель активизирует (разворачивает) окно только при нажатии на кнопку на самой панели, в этот момент активным является окно именно панели, а не окно программы, окно программы успешно восстанавливается.
В моей программе функция восстановления окна сработает, если ты сделаешь активным другое окно, можешь проверить: поставь задержку так, чтобы ты успел выбрать другое окно, включи автосворачивание и автовосстановление, нажми кнопку "сделать снимок" и сразу выбери другое окно, функция автовосстановление сработает, но если ты не выберешь другое окно, то есть окно моей программы останется активным и в свернутом состоянии, 3 подфункция 18 функции не сработает.


Последний раз редактировалось Maxxxx32 Ср июн 14, 2006 7:08 pm, всего редактировалось 1 раз.

Вернуться к началу
   
 Заголовок сообщения:
СообщениеДобавлено: Ср июн 14, 2006 5:51 pm 
Maxxxx32
Цитата:
Не 50, а 255, хотя это тоже мало. Исправлю.

Извиняюсь, не знал, что можно вводить путь длинней, чем отображается на экране.
Насчет mcall 18, 3 буду разбираться.


Вернуться к началу
   
 Заголовок сообщения:
СообщениеДобавлено: Ср июн 14, 2006 8:56 pm 
Maxxxx32
1) Если у тебя исходники ядра от К0530b2, то попробуй переставить строку:
mov [window_minimize],2
сразу после
cmp eax,3 ; ACTIVATE WINDOW
jnz nowindowactivate
2) Если у тебя ядро с SVN то вставь строку:
mov [window_minimize],2
сразу после
sysfn_activate: ; 18.3 = ACTIVATE WINDOW
В принципе должно помочь (если рассуждать логически), но я сам не проверял.


Вернуться к началу
   
 Заголовок сообщения:
СообщениеДобавлено: Ср июн 14, 2006 10:50 pm 
Mario79
Теперь работает, но после сворачивания необходима задержка, равная времени, необходимому для фотканья экрана + 1 секунда. Эту проблему можно решить на уровне приложения.


Вернуться к началу
   
 Заголовок сообщения:
СообщениеДобавлено: Чт июн 15, 2006 11:50 am 
Maxxxx32
Дело в том, что сворачивании и разворачивание, и вообще изменение размеров окна происходит не сразу, а после того, когда ядро, перебрав по кругу все потоки (в том числе и себя) и лишь потом изменяет, когда дойдет до нужного потока.


Вернуться к началу
   
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 78 сообщений ]  На страницу 1 2 3 4 5 6 След.

Часовой пояс: UTC+03:00


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB