Blog. Just Blog

Быстрый поиск

Введите фрагмент названия статьи для поиска

Готовим драники с семгой

21.05.2009 | Категория: А еще я туда ем! | Автор: ManHunter

Готовим драники с лососем

Мой кулинарный привет друзьям из Белоруссии. Вообще картофельные оладьи встречаются в национальных кухнях многих народов мира, отличия, как правило, только в названиях. Блюдо готовится быстро, очень вкусное и сытное, прекрасно подойдет для завтрака.

Читать статью целиком »
Просмотров: 7251 | Комментариев: 4

Исследование защиты программ компании "Простые решения"

18.05.2009 | Категория: Темная сторона Силы | Автор: ManHunter

"Египетский Оракул"

Компания "Простые решения" выпускает программы для кибергадания "Книга перемен", "Египетский Оракул", "Карты Таро - Кельтский Крест" и "Карты Таро - Гадание на Желание или Событие". Оценивать точность и объективность результатов таких гаданий я не буду, так как в результаты работы функции random() все равно никогда не поверю, а вот посмотреть на программы изнутри было бы любопытно.

Читать статью целиком »
Просмотров: 5424 | Комментариев: 2

День Рождения!

15.05.2009 | Категория: Всякая всячина | Автор: ManHunter

День Рождения!

Ну вот и наступил еще один День Рождения. В детстве это событие радостное, а после 30 это уже не праздник, а лишний повод задуматься. За год случилось всякое, и хорошее, и плохое, но оптимизма не теряю. Осталось разрулить проблему с холостяцкой жизнью и тогда все будет совсем хорошо :)

Просмотров: 4521 | Комментариев: 21

Магнитное (липкое) окно на Ассемблере

12.05.2009 | Категория: Образ мышления: Assembler | Автор: ManHunter
Еще один интересный трюк при работе с окнами - так называемые "липкие" или "магнитные" окна, которые прилипают к границам экрана при перемещении. Это реализуется достаточно просто, но выглядит очень эффектно. Для перехвата перемещения окна надо обрабатывать сообщение WM_MOVING. В параметре lParam передается адрес структуры RECT, которая содержит значения конечных координат окна после отпускания курсора мыши. Чтобы при изменении координат окна не возникало неприятного эффекта моргания, их надо менять сразу же в передаваемой структуре. Обработчик WM_MOVING выглядит следующим образом:
  1. ; Обработчик сообщения WM_MOVING
  2.  
  3. MAX_GRID = 20   ; Размер магнитной сетки
  4.  
  5.         ; Получить размер рабочей области экрана
  6.         invoke  SystemParametersInfo,SPI_GETWORKAREA,NULL,coord,FALSE
  7.  
  8.         ; В регистре EDI указатель на структуру координат окна
  9.         mov     edi,[lparam]
  10.  
  11.         ; Проверить положение левой границы окна
  12.         mov     edx,[edi+RECT.left]
  13.         sub     edx,[coord.left]
  14.         mov     eax,edx
  15.         jns     @f
  16.         neg     edx
  17. @@:
  18.         cmp     edx,MAX_GRID
  19.         ja      @f
  20.         sub     [edi+RECT.right],eax
  21.         sub     [edi+RECT.left],eax
  22. @@:
  23.         ; Проверить положение правой границы окна
  24.         mov     edx,[edi+RECT.right]
  25.         sub     edx,[coord.right]
  26.         mov     eax,edx
  27.         jns     @f
  28.         neg     edx
  29. @@:
  30.         cmp     edx,MAX_GRID
  31.         ja      @f
  32.         sub     [edi+RECT.right],eax
  33.         sub     [edi+RECT.left],eax
  34. @@:
  35.         ; Проверить положение верхней границы окна
  36.         mov     edx,[edi+RECT.top]
  37.         sub     edx,[coord.top]
  38.         mov     eax,edx
  39.         jns     @f
  40.         neg     edx
  41. @@:
  42.         cmp     edx,MAX_GRID
  43.         ja      @f
  44.         sub     [edi+RECT.top],eax
  45.         sub     [edi+RECT.bottom],eax
  46. @@:
  47.         ; Проверить положение нижней границы окна
  48.         mov     edx,[edi+RECT.bottom]
  49.         sub     edx,[coord.bottom]
  50.         mov     eax,edx
  51.         jns     @f
  52.         neg     edx
  53. @@:
  54.         cmp     edx,MAX_GRID
  55.         ja      @f
  56.         sub     [edi+RECT.top],eax
  57.         sub     [edi+RECT.bottom],eax
  58. @@:
  59.         mov     eax,TRUE
  60.         jmp     finish
Размеры области экрана для вычисления новых координат окна с учетом таскбара и других видимых панелей можно получить вызовом функции SystemParametersInfo с параметром SPI_GETWORKAREA. В приведенном примере размер магнитной сетки (минимальное расстояние до границы экрана, с которого начинает действовать сила притяжения), меняется в константе MAX_GRID. По умолчанию значение равно 20 пикселов.

Читать статью целиком »
Просмотров: 5374 | Комментариев: 11

Концерт группы Sirenia в "Точке"

10.05.2009 | Категория: Жизнь в оффлайне | Автор: ManHunter

Концерт группы Sirenia в "Точке"

Сегодня сходил на концерт группы "Sirenia". Билетов в партер не было уже в среду, пришлось покупать VIP на верхний третий ярус. Тоже не самый плохой вариант, по крайней мере можно попить пива, сидя за столиком.

Читать статью целиком »
Просмотров: 4995 | Комментариев: 3

01 ... 392 393 394 395 396 397 398 ... 418
Наверх
Powered by PCL's Speckled Band Engine 0.2 RC3
© ManHunter / PCL, 2008-2024
При использовании материалов ссылка на сайт обязательна
Время генерации: 0.09 сек. / MySQL: 2 (0.0297 сек.) / Память: 4.5 Mb
Наверх