purebasic.info

PureBasic forum
Текущее время: Ср ноя 21, 2018 9:14 pm

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 30 ]  На страницу Пред.  1, 2
Автор Сообщение
 Заголовок сообщения:
СообщениеДобавлено: Чт июл 14, 2011 7:25 am 
Не в сети
ассистент

Зарегистрирован: Пт июл 08, 2011 8:27 pm
Сообщений: 12
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
Эти ссылки я уже перелопатил, нет нечё подходящего.
Мне надо к пульту прикрутить простенький таймер, работающий при помощи двух кнопок.
Тот что написал мне MishanayCool мне как раз подходит. только сделать так, чтоб сам таймер был не в окошке, а выводился цифрами на экран на како-ето время, а патом прятался сам, и цифры сделать больше?


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт июл 14, 2011 9:05 am 
Не в сети
профессор
Аватар пользователя

Зарегистрирован: Ср фев 02, 2011 10:44 am
Сообщений: 382
Откуда: :адуктО
Благодарил (а): 6 раз.
Поблагодарили: 1 раз.
Пункты репутации: 0
Gudzik11 писал(а):
не в окошке, а выводился цифрами на экран на како-ето время, а патом прятался сам, и цифры сделать больше?

ищи в код - архиве вриант создания окна с прозрачным фоном


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт июл 14, 2011 2:06 pm 
Не в сети
ассистент

Зарегистрирован: Пт июл 08, 2011 8:27 pm
Сообщений: 12
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
Нельзя так издеваться над людьми. Буду изучать .


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт июл 14, 2011 2:20 pm 
Не в сети
профессор
Аватар пользователя

Зарегистрирован: Ср фев 02, 2011 10:44 am
Сообщений: 382
Откуда: :адуктО
Благодарил (а): 6 раз.
Поблагодарили: 1 раз.
Пункты репутации: 0
Gudzik11 писал(а):
Нельзя так издеваться над людьми. Буду изучать .

Ну почему сразу издеваться? Мы хотим чтобы ты проникся Пуриком до мозга костей, и прочувствовал всю прелесть программинга на нём )))
Хотя бы наш форум посмотрел бы на вопрос всяких там надписей...
вот в соседней теме например - есть пример кода kvitaliy для вывода часиков на экран:
Код:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
; окно - что бы убить прогу легче было.
OpenWindow(0, 544, 251, 270, 72, "Window_0", #PB_Window_SystemMenu|#PB_Window_MinimizeGadget)
 
  Printstr.s = FormatDate("%hh:%ii:%ss", Date())  
 
 Repeat
  Event = WaitWindowEvent(10)
  deskDC.l =GetDC_(0)
  SetBkMode_(deskDC,1)
  Ellipse_(deskDC, 10, 10, 100, 30)
  TextOut_(deskDC, 25, 10, Printstr, Len(Printstr))
     
  Select Event
     Case #PB_Event_CloseWindow
      EventWindow = EventWindow()
      If EventWindow = 0
        CloseWindow(0)
        Break
      EndIf
  EndSelect
ForEver


Немного допилить, увеличить шрифт и - готово!


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт июл 14, 2011 6:09 pm 
Не в сети
профессор
Аватар пользователя

Зарегистрирован: Ср фев 02, 2011 10:44 am
Сообщений: 382
Откуда: :адуктО
Благодарил (а): 6 раз.
Поблагодарили: 1 раз.
Пункты репутации: 0
Так вернее:
Код:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
; окно - что бы убить прогу легче было.
OpenWindow(0, 544, 251, 270, 72, "Window_0", #PB_Window_SystemMenu|#PB_Window_MinimizeGadget)
 
  Printstr.s = "Я потухну через 30 мин!"  
 
 Repeat
  Event = WaitWindowEvent(10)
  deskDC.l =GetDC_(0)
  SetBkMode_(deskDC,1)
  LoadFont(1,"Arial", 70)
  ;Ellipse_(deskDC, 10, 10, 100, 30)
  SetTextColor_(deskDC,255)
  SelectObject_(deskDC,FontID(1))
  TextOut_(deskDC, 25, 10, Printstr, Len(Printstr))
  ReleaseDC_(0, deskDC)
  Select Event
     Case #PB_Event_CloseWindow
      EventWindow = EventWindow()
      If EventWindow = 0
        CloseWindow(0)
        Break
      EndIf
  EndSelect
ForEver



Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт июл 14, 2011 6:30 pm 
Не в сети
МОДЕРАТОР
Аватар пользователя

Зарегистрирован: Пн апр 09, 2007 4:53 pm
Сообщений: 11325
Благодарил (а): 4 раз.
Поблагодарили: 441 раз.
kosjachok писал(а):
  LoadFont(1,"Arial", 70)
Зачем каждый раз грузить шрифт?
Одного раза достаточно.

_________________
Компьютер позволяет решать все те проблемы, которые до его изобретения не существовали. :) :)


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт июл 14, 2011 6:56 pm 
Не в сети
док

Зарегистрирован: Пт янв 21, 2011 12:01 pm
Сообщений: 116
Откуда: Беларусь
Благодарил (а): 1 раз.
Поблагодарили: 2 раз.
Пункты репутации: 0
Цитата:
только сделать так, чтоб сам таймер был не в окошке, а выводился цифрами на экран на како-ето время, а патом прятался сам

Мне интересно Gudzik11, а как выходить из программы без визуального окна?
Тогда нужно какую-нибудь клавишу привязать для выхода.
Объясни как выходить из проги будем и я доделаю, раз уже начал. :roll:


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт июл 14, 2011 7:08 pm 
Не в сети
МОДЕРАТОР

Зарегистрирован: Вт дек 05, 2006 8:46 am
Сообщений: 6399
Благодарил (а): 21 раз.
Поблагодарили: 200 раз.
Пункты репутации: 52
MishanayCool писал(а):
как выходить из программы без визуального окна?

Программа выключает комп - зачем из неё выходить? :D
Ну а если очень надо, то назначить ещё одну комбинацию типа Ctrl+F9 и оператор End.

_________________
read-only ¯\_(ツ)_/¯


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт июл 15, 2011 11:17 am 
Не в сети
МОДЕРАТОР

Зарегистрирован: Вт дек 05, 2006 8:46 am
Сообщений: 6399
Благодарил (а): 21 раз.
Поблагодарили: 200 раз.
Пункты репутации: 52
Gudzik11
Вот, доделал тебе программу :D


Вложения:
Комментарий к файлу: Пользуйся на здоровье!
TimerOffPow.zip [15.32 KiB]
Скачиваний: 143

_________________
read-only ¯\_(ツ)_/¯
Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт июл 15, 2011 11:43 pm 
Не в сети
ассистент

Зарегистрирован: Пт июл 08, 2011 8:27 pm
Сообщений: 12
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
Всем кто участвовал - спасибо, особенно kvitaliy!
Я счастлив !!!!!!!!!!!!


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт июл 15, 2011 11:45 pm 
Не в сети
ассистент

Зарегистрирован: Пт июл 08, 2011 8:27 pm
Сообщений: 12
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
а purebasic я выучЮ


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Сб июл 16, 2011 12:26 am 
Не в сети
ассистент

Зарегистрирован: Пт июл 08, 2011 8:27 pm
Сообщений: 12
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
всё плохо не хрена не работает когда включаю ГОМ ПЛЕЕР перестают работать кнопки
CTRL-F10
CTRL-F11
CTRL-F12
это можно исправить?


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Сб июл 16, 2011 6:49 am 
Не в сети
МОДЕРАТОР

Зарегистрирован: Вт дек 05, 2006 8:46 am
Сообщений: 6399
Благодарил (а): 21 раз.
Поблагодарили: 200 раз.
Пункты репутации: 52
Gudzik11 писал(а):
всё плохо не хрена не работает когда включаю ГОМ ПЛЕЕР перестают работать кнопки
CTRL-F10
CTRL-F11
CTRL-F12
это можно исправить?

Не гони! Нормально работает. Специально скачал и установил последнюю русскую версию этого ГОМ... плеера.
Изображение
А так же работает и в полноэкранном режиме и во всех остальных.
Другое дело если у тебя там может какие то горячие клавиши назначены конфликтующие с этими или ты поставил плееру ооочень высокий приоритет? Тогда просто настрой правильно плеер.

_________________
read-only ¯\_(ツ)_/¯


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Сб июл 16, 2011 7:46 am 
Не в сети
ассистент

Зарегистрирован: Пт июл 08, 2011 8:27 pm
Сообщений: 12
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
да и правда .
Спасибо .
А можно код выложить ?


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Сб июл 16, 2011 9:06 am 
Не в сети
МОДЕРАТОР

Зарегистрирован: Вт дек 05, 2006 8:46 am
Сообщений: 6399
Благодарил (а): 21 раз.
Поблагодарили: 200 раз.
Пункты репутации: 52
Код написал MishanayCool, я только дополнил в соответствии с твоими пожеланиями. Правда вместо 10 сек надпись висит 5 сек., а так вроде всё.

Вот такие сделаны дополнения:

Невидимое окно с прозрачным TextGadget, текст размером 45, красного цвета, "всегда сверху":
Код:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
OpenWindow(#Window, 1, 1, 400, 120, "", #PB_Window_Invisible | #PB_Window_BorderLess | #PB_Window_ScreenCentered) 
        SetWindowColor(#Window,RGB(255,254,253) )
        SetWindowLongPtr_(WindowID(#Window),#GWL_EXSTYLE,  #WS_EX_LAYERED)  
        SetWindowPos_(WindowID(#Window),#Null, screenW/2-200,screenH/2-60 , 400, 120, #Null)
        SetLayeredWindowAttributes_(WindowID(#Window),RGB(255,254,253),#Null,#LWA_COLORKEY)
        TextGadget(#Text, -1, -1, 405, 123, "", #PB_Text_Center)
        font = LoadFont(#PB_Any, "Arial", 45)
        SetGadgetFont(#Text, FontID(font))
        SetGadgetColor(#Text, #PB_Gadget_BackColor, RGB( 255,254, 253))
        SetGadgetColor(#Text, #PB_Gadget_FrontColor, RGB( 255, 0, 0))
        HideWindow(#Window, 0)
        StickyWindow(#Window, 1)
 
 



screenW-H определяется DesktopWidth(0) См.спр.

Для иконки в трее мнею CreatePopupMenu(0) См.спр.
И сама иконка
Код:
1
2
3
; иконка программы в трее берётся из системной DLL - что зря её с собой таскать, если есть готовая...
AddSysTrayIcon(1, WindowID(#Window),ExtractIcon_(0,SystemPath+"\SetupAPI.dll",22)) ; 22 -я иконка это листочек
SysTrayIconToolTip(1, "Таймер выключения v0.0.1")



По этим фразам поиск по сайту и можно найти код обработки меню и т.п.

В процедуре TimeDown(value) ввел ещё одно условие

Код:
1
2
3
4
 
Static Hide.l
 Hide+1
If Hide % 5=0:visible=0:Hide=0:EndIf ; через 5 сек скрывает отсчет


Оно означает, что если переменная Hide станет кратной 5 то окно спрячется. Исправив на 10 время можно увеличить до 10 сек.

Ну вроде и всё! Собирай, изучай. Что не выходит - спрашивай.

_________________
read-only ¯\_(ツ)_/¯


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 30 ]  На страницу Пред.  1, 2

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

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


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

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group (блог о phpBB)
Сборка создана CMSart Studio
Русская поддержка phpBB