purebasic.info

PureBasic forum
Текущее время: Сб янв 20, 2018 4:06 pm

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




Начать новую тему Ответить на тему  [ Сообщений: 32 ]  На страницу Пред.  1, 2, 3  След.
Автор Сообщение
 Заголовок сообщения:
СообщениеДобавлено: Вс май 19, 2013 3:04 pm 
Не в сети
профессор
Аватар пользователя

Зарегистрирован: Чт дек 17, 2009 4:49 pm
Сообщений: 1230
Откуда: г. Ангарск
Благодарил (а): 2 раз.
Поблагодарили: 15 раз.
Пункты репутации: 10
Пётр писал(а):
Еще интересный код.

Эт ладно, а вот почему макрос имеет приоритет, эт загадка.

_________________
.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вс май 19, 2013 3:18 pm 
Не в сети
МОДЕРАТОР
Аватар пользователя

Зарегистрирован: Пн апр 09, 2007 4:53 pm
Сообщений: 11080
Благодарил (а): 4 раз.
Поблагодарили: 385 раз.
lakomet писал(а):
почему макрос имеет приоритет
Потому что сначала содержимое макросов вставляется на места их вызовов, а затем уже производится трансляция в асм.

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


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Сб дек 28, 2013 5:12 pm 
Не в сети
МОДЕРАТОР
Аватар пользователя

Зарегистрирован: Пн апр 09, 2007 4:53 pm
Сообщений: 11080
Благодарил (а): 4 раз.
Поблагодарили: 385 раз.
Нашел в PB недокументированную функцию ButtonImageGadgetNoSkin. Она появилась давно (в 4.30 есть), но в справке о ней ни слова.

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


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Сб дек 28, 2013 6:30 pm 
Не в сети
PureBasic Coder
Аватар пользователя

Зарегистрирован: Чт ноя 10, 2011 10:50 am
Сообщений: 4049
Откуда: Ростов-на-Дону
Благодарил (а): 70 раз.
Поблагодарили: 80 раз.
Пункты репутации: 24
По моему это обычный ImageGadget
Код:
1
2
3
4
5
6
7
8
9
10
11
OpenWindow(1,5,5,400,300,"")
im = CreateImage(1, 100, 40)
 
If StartDrawing(ImageOutput(1))
  Box(0,0,100,40,#Red)
  StopDrawing()
EndIf
 
ButtonImageGadgetNoSkin(1, 5, 5, 100, 40, im)
 
Repeat:Until WaitWindowEvent() = #PB_Event_CloseWindow


_________________
Пурик - лучший язык программирования


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Сб дек 28, 2013 8:31 pm 
Не в сети
МОДЕРАТОР

Зарегистрирован: Вт дек 05, 2006 8:46 am
Сообщений: 6224
Благодарил (а): 16 раз.
Поблагодарили: 173 раз.
Пункты репутации: 48
Никита Однороб писал(а):
По моему это обычный ImageGadget

Не знаю, как это выглядит на win8, но на XP ButtonImageGadgetNoSkin выглядит как кнопка без рамки при наведении на неё мышкой ( или как без поддержки стиля XP).
Именно в этом контексте он и применяется в примерах на английском форуме.

_________________
read-only


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Сб дек 28, 2013 9:52 pm 
Не в сети
доцент
Аватар пользователя

Зарегистрирован: Вт сен 11, 2012 11:48 am
Сообщений: 35
Благодарил (а): 2 раз.
Поблагодарили: 1 раз.
Пункты репутации: 0
А в чём её недокументированная возможность?


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Вс дек 29, 2013 9:51 am 
Не в сети
профессор

Зарегистрирован: Вс июн 10, 2012 8:18 am
Сообщений: 1294
Благодарил (а): 60 раз.
Поблагодарили: 49 раз.
Пункты репутации: 14
Cuprum писал(а):
А в чём её недокументированная возможность?

В том, что она недокументированная, очевидно же.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Вс дек 29, 2013 10:49 am 
Не в сети
PureBasic Coder
Аватар пользователя

Зарегистрирован: Чт ноя 10, 2011 10:50 am
Сообщений: 4049
Откуда: Ростов-на-Дону
Благодарил (а): 70 раз.
Поблагодарили: 80 раз.
Пункты репутации: 24
Ага. Если отключить стили WinXP, то красная кнопка с рамкой. Теперь вижу :)

_________________
Пурик - лучший язык программирования


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Вс дек 29, 2013 1:43 pm 
Не в сети
доцент
Аватар пользователя

Зарегистрирован: Вт сен 11, 2012 11:48 am
Сообщений: 35
Благодарил (а): 2 раз.
Поблагодарили: 1 раз.
Пункты репутации: 0
MrF писал(а):
Cuprum писал(а):
А в чём её недокументированная возможность?

В том, что она недокументированная, очевидно же.

Так, а что она может-то?


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Вс дек 29, 2013 3:33 pm 
Не в сети
МОДЕРАТОР
Аватар пользователя

Зарегистрирован: Пн апр 09, 2007 4:53 pm
Сообщений: 11080
Благодарил (а): 4 раз.
Поблагодарили: 385 раз.
Cuprum писал(а):
Так, а что она может-то?
Виталий уже ответил. viewtopic.php?p=72678#p72678

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


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Сб мар 01, 2014 3:59 pm 
Не в сети
профессор

Зарегистрирован: Вт янв 13, 2009 2:41 pm
Сообщений: 369
Благодарил (а): 3 раз.
Поблагодарили: 17 раз.
Пункты репутации: 8
EventLParam() и EventWParam() достаточно полезные функции, но в справке они присутствуют только в истории изменений за 1 August 2001 : Version 2.40


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Сб мар 01, 2014 5:37 pm 
Не в сети
МОДЕРАТОР

Зарегистрирован: Вт дек 05, 2006 8:46 am
Сообщений: 6224
Благодарил (а): 16 раз.
Поблагодарили: 173 раз.
Пункты репутации: 48
Fox писал(а):
EventLParam() и EventWParam() достаточно полезные функции, но в справке они присутствуют только в истории изменений за 1 August 2001 : Version 2.40

Чем они полезны? По взрослому использовать SetWindowCallback(). А это оставили для совместимости со старьем, да и большинство программеров Пурика версию 2.40 ни разу не видели :D

_________________
read-only


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Сб мар 01, 2014 6:02 pm 
Не в сети
профессор

Зарегистрирован: Вт янв 13, 2009 2:41 pm
Сообщений: 369
Благодарил (а): 3 раз.
Поблагодарили: 17 раз.
Пункты репутации: 8
Ну да, а чем тогда полезен EventType(), можно ж коллбэк прилепить.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Сб мар 01, 2014 6:18 pm 
Не в сети
МОДЕРАТОР

Зарегистрирован: Вт дек 05, 2006 8:46 am
Сообщений: 6224
Благодарил (а): 16 раз.
Поблагодарили: 173 раз.
Пункты репутации: 48
Fox писал(а):
Ну да, а чем тогда полезен EventType(), можно ж коллбэк прилепить.

Можно конечно. Некоторые так программы и пишут, тут уж на любителя.
Fred давал разъяснение по поводу EventLParam() и EventWParam() и не рекомендует использовать то, что может пропасть в следующих версиях, а правильную работу EventType() он гарантирует.

_________________
read-only


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Сб мар 01, 2014 6:30 pm 
Не в сети
профессор

Зарегистрирован: Вт янв 13, 2009 2:41 pm
Сообщений: 369
Благодарил (а): 3 раз.
Поблагодарили: 17 раз.
Пункты репутации: 8
Спорить не буду, просто мне пару раз нужно было получить параметр сообщения, и лепить для этого коллбэк, расшаривать нужные переменные было излишним. К тому же, получать сообщения через WindowEvent/WaitWindowEvent, при этом не получая тут же и параметры сообщения, имея такую возможность, довольно глупо. Таким же эбразом можно насоздавать процедур без параметров, а в качастве параметров использовать глобальные переменные, и попробуй потом не накосяч, нечаянно затерев значение этого параметра, или забыв какой-нибудь выставить. В общем я за WindowCallback, но и данный функционал имеет место для пользования, особенно в утилитах, написанных на коленке за пять минут.


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

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


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

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


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

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