purebasic.info

PureBasic forum
Текущее время: Вс окт 20, 2019 9:24 am

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




Начать новую тему Ответить на тему  [ Сообщений: 6 ] 
Автор Сообщение
 Заголовок сообщения: Я не знаю как работает SetGadgetColor
СообщениеДобавлено: Пн окт 07, 2019 5:48 pm 
Не в сети
доцент

Зарегистрирован: Пн янв 23, 2017 11:04 am
Сообщений: 37
Благодарил (а): 2 раз.
Поблагодарили: 1 раз.
Пункты репутации: 0
чего-то я не понимаю в этой функции.Требуется помошь зала.
вот в этом коде , после нажатия на F7 сначала игнорируются команды SetGadgetColor, не понимаю, почему так происходит.
Код:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Enumeration
  #WIN_MAIN:#MENU_MAIN:#F7
EndEnumeration
If OpenWindow(#WIN_MAIN,     0, 0, 960, 668, "rrrr "+v$, #PB_Window_MinimizeGadget | #PB_Window_ScreenCentered)
   SetWindowColor(#WIN_MAIN, 0) ;поставил фон черный окну
   If CreateMenu(#MENU_MAIN, WindowID(#WIN_MAIN))
           AddKeyboardShortcut(#WIN_MAIN,#PB_Shortcut_F7,#F7)
  Repeat
  Event.l = WaitWindowEvent() ;:Debug Event
Select Event
  Case #PB_Event_Menu
    Select EventMenu()
        Case #F7
          TextGadget(#F7,  640, 593, 230, 30, "aaaaaaaa"):SetGadgetColor(#F7, #PB_Gadget_FrontColor,#Blue):SetGadgetColor(#F7, #PB_Gadget_BackColor, #Black);НЕ РАБОТАЕТ SetGadgetColor
          Delay(1500)
          TextGadget(#F7,  640, 593, 230, 30, "bbbbbbbb"):SetGadgetColor(#F7, #PB_Gadget_FrontColor,#Blue):SetGadgetColor(#F7, #PB_Gadget_BackColor, #Black)
   EndSelect
 
   Case #PB_Event_CloseWindow
      End
EndSelect
 Until Event = #PB_Event_CloseWindow
EndIf
EndIf


_________________
.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Я не знаю как работает SetGadgetColor
СообщениеДобавлено: Пн окт 07, 2019 6:24 pm 
Не в сети
профессор

Зарегистрирован: Сб фев 06, 2016 6:18 pm
Сообщений: 330
Благодарил (а): 14 раз.
Поблагодарили: 40 раз.
Пункты репутации: 2
Код:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Enumeration
  #WIN_MAIN
  #MENU_MAIN
  #F7
EndEnumeration
 
If OpenWindow(#WIN_MAIN, 0, 0, 960, 668, "rrrr "+v$, #PB_Window_MinimizeGadget | #PB_Window_ScreenCentered)
  SetWindowColor(#WIN_MAIN, 0)
  If CreateMenu(#MENU_MAIN, WindowID(#WIN_MAIN))
    AddKeyboardShortcut(#WIN_MAIN, #PB_Shortcut_F7, #F7)
    Repeat
      Event.l = WaitWindowEvent()
      Select Event
        Case #PB_Event_Menu
          Select EventMenu()
            Case #F7
              TextGadget(#F7,  640, 593, 230, 30, "aaaaaaaa")
              SetGadgetColor(#F7, #PB_Gadget_FrontColor,#Blue)
              SetGadgetColor(#F7, #PB_Gadget_BackColor, #Black)
              Delay(1500)
              FreeGadget(#F7); !
              TextGadget(#F7,  640, 593, 230, 30, "bbbbbbbb")
              SetGadgetColor(#F7, #PB_Gadget_FrontColor,#Blue)
              SetGadgetColor(#F7, #PB_Gadget_BackColor, #Black)
          EndSelect      
      EndSelect
    Until Event = #PB_Event_CloseWindow
  EndIf
EndIf



Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Я не знаю как работает SetGadgetColor
СообщениеДобавлено: Пн окт 07, 2019 6:44 pm 
Не в сети
доцент

Зарегистрирован: Сб янв 19, 2013 9:48 am
Сообщений: 37
Благодарил (а): 0 раз.
Поблагодарили: 11 раз.
Вот этот Delay не дает перерисовать окно
Код:
1
Delay(1500)



А если так:
Код:
1
2
3
4
5
6
7
8
TextGadget(#F7,  640, 593, 230, 30, "aaaaaaaa")
SetGadgetColor(#F7, #PB_Gadget_FrontColor,#Blue)
SetGadgetColor(#F7, #PB_Gadget_BackColor, #Black)
UpdateWindow_(WindowID(#WIN_MAIN))
Delay(1500)
TextGadget(#F7,  640, 593, 230, 30, "bbbbbbbb")
SetGadgetColor(#F7, #PB_Gadget_FrontColor,#Blue)
SetGadgetColor(#F7, #PB_Gadget_BackColor, #Black)



Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Я не знаю как работает SetGadgetColor
СообщениеДобавлено: Вт окт 08, 2019 4:47 pm 
Не в сети
доцент

Зарегистрирован: Пн янв 23, 2017 11:04 am
Сообщений: 37
Благодарил (а): 2 раз.
Поблагодарили: 1 раз.
Пункты репутации: 0
Спасибо, ребята, за ответы. Правда, вариант repeat не работает, а вот подсказку rnd буду изучать глубже.

_________________
.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Я не знаю как работает SetGadgetColor
СообщениеДобавлено: Вт окт 08, 2019 6:04 pm 
Не в сети
профессор

Зарегистрирован: Сб фев 06, 2016 6:18 pm
Сообщений: 330
Благодарил (а): 14 раз.
Поблагодарили: 40 раз.
Пункты репутации: 2
Goga писал(а):
Правда, вариант repeat не работает
Часом туплю.
Предлагаю еще такой вариант:
Код:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
Enumeration
  #WIN_MAIN
  #MENU_MAIN
  #F7
EndEnumeration
 
If OpenWindow(#WIN_MAIN, 0, 0, 960, 668, "rrrr "+v$, #PB_Window_MinimizeGadget | #PB_Window_ScreenCentered)
  TextGadget(#F7,  640, 593, 230, 30, "")
  HideGadget(#F7, 1)
  SetWindowColor(#WIN_MAIN, 0)
  If CreateMenu(#MENU_MAIN, WindowID(#WIN_MAIN))
    AddKeyboardShortcut(#WIN_MAIN, #PB_Shortcut_F7, #F7)
    Repeat
      Event.l = WaitWindowEvent()
      Select Event
        Case #PB_Event_Menu
          Select EventMenu()
            Case #F7
              SetGadgetText(#F7, "aaaaaaaa")
              SetGadgetColor(#F7, #PB_Gadget_FrontColor,#Blue)
              SetGadgetColor(#F7, #PB_Gadget_BackColor, #Black)
              HideGadget(#F7, 0)
              UpdateWindow_(WindowID(#WIN_MAIN))
              Delay(1500)
              SetGadgetText(#F7, "bbbbbbbb")
              SetGadgetColor(#F7, #PB_Gadget_FrontColor,#Blue)
              SetGadgetColor(#F7, #PB_Gadget_BackColor, #Black)
              Delay(1500)
              HideGadget(#F7, 1)
          EndSelect      
      EndSelect
    Until Event = #PB_Event_CloseWindow
  EndIf
EndIf



Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Я не знаю как работает SetGadgetColor
СообщениеДобавлено: Пт окт 11, 2019 6:44 am 
Не в сети
профессор

Зарегистрирован: Вт май 13, 2014 4:12 am
Сообщений: 895
Благодарил (а): 95 раз.
Поблагодарили: 26 раз.
Пункты репутации: 5
так тоже работает, а почему сами придумайте :D
Код:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
 
    Enumeration
      #WIN_MAIN
      #MENU_MAIN
      #F7
    EndEnumeration
     
If OpenWindow(#WIN_MAIN, 0, 0, 960, 668, "", #PB_Window_MinimizeGadget | #PB_Window_ScreenCentered)
      TextGadget(#F7,  640, 593, 230, 30, "")
      If CreateMenu(#MENU_MAIN, WindowID(#WIN_MAIN))
        AddKeyboardShortcut(#WIN_MAIN, #PB_Shortcut_F7, #F7)
        Repeat
          Event.l = WaitWindowEvent()
          Select Event
            Case #PB_Event_Menu
              Select EventMenu()
                Case #F7
       ;;;;;           SetGadgetText(#F7, "aaaaaaaa")
                  SetGadgetColor(#F7, #PB_Gadget_FrontColor,#Blue)
                  SetGadgetColor(#F7, #PB_Gadget_BackColor, #White)
SetGadgetText(#f7, "aaaaaaaa")
                  Delay(1500)
                  SetGadgetText(#F7, "bbbbbbbb")
                  SetGadgetColor(#F7, #PB_Gadget_FrontColor,#Red)
                  SetGadgetColor(#F7, #PB_Gadget_BackColor, #Yellow)
              EndSelect      
          EndSelect
        Until Event = #PB_Event_CloseWindow
      EndIf
    EndIf



объясните мне, какие изменения он тут хотел увидить? чё он ругается на функцию, если задал одинаковые параметры?
Код:
1
2
3
4
5
6
7
8
9
10
 
  TextGadget(#F7,  640, 593, 230, 30, "aaaaaaaa")
SetGadgetColor(#F7, #PB_Gadget_FrontColor,#Blue)
SetGadgetColor(#F7, #PB_Gadget_BackColor, #Black);НЕ РАБОТАЕТ SetGadgetColor
          Delay(1500)
          TextGadget(#F7,  640, 593, 230, 30, "bbbbbbbb")
SetGadgetColor(#F7, #PB_Gadget_FrontColor,#Blue)
SetGadgetColor(#F7, #PB_Gadget_BackColor, #Black)
   EndSelect
 



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

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


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

Сейчас этот форум просматривают: MSN [Bot] и гости: 3


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

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