purebasic.info

PureBasic forum
Текущее время: Ср сен 19, 2018 10:50 am

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




Начать новую тему Ответить на тему  [ Сообщений: 8 ] 
Автор Сообщение
 Заголовок сообщения: Поисковик по всем форумам о PureBasic
СообщениеДобавлено: Вс дек 13, 2009 11:44 pm 
Не в сети
МОДЕРАТОР

Зарегистрирован: Вт дек 05, 2006 8:46 am
Сообщений: 6382
Благодарил (а): 20 раз.
Поблагодарили: 198 раз.
Пункты репутации: 48
Многие посетители нашего форума жалуются, что нет ни какой возможности искать нужную информацию на форуме, что поисковая система не совершена. Эту проблему можно решить привлекая для поиска такие монстры как к примеру Google. Но составлять запрос каждый раз в ручную напрягает не меньше, чем собственный бестолковый поисковик форума. Ну вот я и решил немного упростить задачу, и автоматизировать поиск по всем 4 основным форумам о Пурике.
Код компилируется в v 4.30. Возможно не всегда корректно работает, но для практических целей вполне пригоден. Можно модифицировать и улучшать ( а улучшать есть чего!) по своему вкусу.
Код:
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
 
;{- Enumerations / DataSections
;{ Windows
Enumeration
  #Window_0
EndEnumeration
;}
;{ Gadgets
Enumeration
  #Frame3D_1
  #Text_2
  #Text_3
  #Text_4
  #Text_5
  #String_6
  #String_7
  #String_8
  #String_9
  #Container_10
  #Option_11
  #Option_12
  #Option_13
  #Option_14
  #Button_15
  #HyperLink_16
EndEnumeration
;}
Define.l Event, EventWindow, EventGadget, EventType, EventMenu
 
;}
Procedure OpenWindow_Window_0()
  If OpenWindow(#Window_0, 156, 142, 626, 346, "Точный поиск по форумам о PureBasic( Google)", #PB_Window_SystemMenu|#PB_Window_SizeGadget|#PB_Window_MinimizeGadget|#PB_Window_TitleBar)
    ;If CreateGadgetList(WindowID(#Window_0))
      Frame3DGadget(#Frame3D_1, 5, 15, 605, 155, "Найти результаты")
      TextGadget(#Text_2, 10, 40, 140, 20, "со всеми словами")
      TextGadget(#Text_3, 10, 65, 135, 20, "с точной фразой")
      TextGadget(#Text_4, 10, 91, 135, 20, "c любым из слов")
      TextGadget(#Text_5, 10, 115, 135, 20, "без слов")
      StringGadget(#String_6, 160, 40, 420, 20, "")
      StringGadget(#String_7, 160, 65, 420, 20, "")
      StringGadget(#String_8, 160, 90, 420, 20, "")
      StringGadget(#String_9, 160, 115, 420, 20, "")
      ButtonGadget(#Button_15, 165, 270, 235, 25, "Начать поиск")
      HyperLinkGadget(#HyperLink_16, 5, 320, 280, 20, "Самый точный поиск", #Blue, #PB_HyperLink_Underline)
      GadgetToolTip(#HyperLink_16, "В буфере обмена будет выбранный форум")
 
      ContainerGadget(#Container_10, 10, 190, 600, 70)
        OptionGadget(#Option_11, 5, 5, 285, 15, "Русский форум"): SetGadgetState(#Option_11,1)
        OptionGadget(#Option_12, 5, 25, 285, 15, "Английский форум")
        OptionGadget(#Option_13, 295, 5, 285, 15, "Немецкий форум")
        OptionGadget(#Option_14, 295, 25, 285, 15, "Французский форум")
      CloseGadgetList()
    ;EndIf
  EndIf
EndProcedure
 
OpenWindow_Window_0()
 
;{- Event loop
Repeat
  Event = WaitWindowEvent()
  Select Event
    ; ///////////////////
    Case #PB_Event_Gadget
      EventGadget = EventGadget()
      EventType = EventType()
      If EventGadget = #Frame3D_1
      ElseIf EventGadget = #Button_15
        If GetGadgetState(#Option_11)
           Forum$="http://www.google.ru/search?q=site%3Ahttp%3A%2F%2Fpbasic.spb.ru%2FphpBB2+I "
           ElseIf  GetGadgetState(#Option_12)
           Forum$="http://www.google.ru/search?q=site%3Ahttp%3A%2F%2Fwww.purebasic.fr%2Fenglish+I "
           ElseIf  GetGadgetState(#Option_13)
           Forum$="http://www.google.ru/search?q=site%3Ahttp%3A%2F%2Fwww.purebasic.fr%2Fgerman+I "
           ElseIf  GetGadgetState(#Option_14)
           Forum$="http://www.google.ru/search?q=site%3Ahttp%3A%2F%2Fwww.purebasic.fr%2Ffrench+I "
        EndIf  
         
           
            If Len(GetGadgetText(#String_6))>2
                Inquiry1$=Chr(32)+"+"+URLEncoder(GetGadgetText(#String_6))
                Else
                Inquiry1$=""
            EndIf
            If Len(GetGadgetText(#String_7))>2
                Inquiry2$=Chr(32)+"+"+Chr(34)+URLEncoder(GetGadgetText(#String_7))+Chr(34)
                Else
                Inquiry2$=""
            EndIf
            If Len(GetGadgetText(#String_8))>2
             For i=1 To Len(GetGadgetText(#String_8))
                slovo$=StringField(GetGadgetText(#String_8), i, " ")
                If Len(slovo$)
                Inquiry3$=Inquiry3$+" | "+slovo$
                EndIf
             Next i
             Inquiry3$=URLEncoder(Inquiry3$)
            Else
                Inquiry3$=""
            EndIf
            If Len(GetGadgetText(#String_9))>2
            For i=1 To Len(GetGadgetText(#String_9))
                slovo$=StringField(GetGadgetText(#String_9), i, " ")
                If Len(slovo$)
                Inquiry4$=Inquiry4$+" -"+slovo$
                EndIf
             Next i
             Inquiry4$=URLEncoder(Inquiry4$)
            Else
                Inquiry4$=""
            EndIf
            Inquiry$= Forum$+Inquiry1$+Inquiry2$+Inquiry3$+Inquiry4$
           
            RunProgram(Inquiry$)
       
             
      ElseIf EventGadget = #HyperLink_16
        If GetGadgetState(#Option_11)
           SetClipboardText("http://pbasic.spb.ru/phpBB2")
           ElseIf  GetGadgetState(#Option_12)
           SetClipboardText("http://www.purebasic.fr/english")
           ElseIf  GetGadgetState(#Option_13)
           SetClipboardText("http://www.purebasic.fr/german")
           ElseIf  GetGadgetState(#Option_14)
           SetClipboardText("http://www.purebasic.fr/french")
        EndIf
      RunProgram("http://www.google.com/advanced_search")
      EndIf
    ; ////////////////////////
    Case #PB_Event_CloseWindow
      EventWindow = EventWindow()
      If EventWindow = #Window_0
        CloseWindow(#Window_0)
        Break
      EndIf
  EndSelect
ForEver
;
;}
 
 
 
 



Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн дек 14, 2009 1:55 am 
Не в сети
студент

Зарегистрирован: Сб дек 12, 2009 12:52 am
Сообщений: 2
Откуда: Гродно
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
прикольно.... проверил работает. зачот!
___________________
блог путешественника


Последний раз редактировалось Hiks Сб июн 02, 2012 2:57 pm, всего редактировалось 1 раз.

Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн дек 14, 2009 7:32 am 
Не в сети
профессор
Аватар пользователя

Зарегистрирован: Чт июн 25, 2009 1:02 pm
Сообщений: 2285
Откуда: Russia — Belarus
Благодарил (а): 6 раз.
Поблагодарили: 72 раз.
Пункты репутации: 11
Работает, действительно удобнее чем печатать каждый раз запрос с указанием поиска по форуму.
В линупсах, или например в Aston'е для Windows есть такие интересные вещи как поиск прямо из рабочего стола, на нем всегда есть поле для ввода и выбора поисковика, точно так же как это реализовано и в браузерах:
Изображение
Жаль, что через стандартные средства Windows это будет убого.

_________________
EnableExplicit User


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн дек 14, 2009 7:32 am 
Не в сети
МОДЕРАТОР

Зарегистрирован: Вт дек 05, 2006 8:46 am
Сообщений: 6382
Благодарил (а): 20 раз.
Поблагодарили: 198 раз.
Пункты репутации: 48
Дополнил код поиском по Архиву кодов и по всему Интернету

Код:
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
;Ver 1.1
; - Добавлен поиск по Архиву кодов на сайте purearea.net
; - Добавлен поиск по всему Интернету
; kvitaliy 14.12.2009 г.
;{- Enumerations / DataSections
;{ Windows
Enumeration
  #Window_0
EndEnumeration
;}
;{ Gadgets
Enumeration
  #Frame3D_1
  #Text_2
  #Text_3
  #Text_4
  #Text_5
  #String_6
  #String_7
  #String_8
  #String_9
  #Container_10
  #Option_11
  #Option_12
  #Option_13
  #Option_14
  #Button_15
  #HyperLink_16
  #Option_17
  #Option_18
EndEnumeration
;}
Define.l Event, EventWindow, EventGadget, EventType, EventMenu
 
;}
Procedure OpenWindow_Window_0()
  If OpenWindow(#Window_0, 156, 142, 626, 346, "Точный поиск по форумам о PureBasic( Google)", #PB_Window_SystemMenu|#PB_Window_SizeGadget|#PB_Window_MinimizeGadget|#PB_Window_TitleBar)
    ;If CreateGadgetList(WindowID(#Window_0))
      Frame3DGadget(#Frame3D_1, 5, 15, 605, 155, "Найти результаты")
      TextGadget(#Text_2, 10, 40, 140, 20, "со всеми словами")
      TextGadget(#Text_3, 10, 65, 135, 20, "с точной фразой")
      TextGadget(#Text_4, 10, 91, 135, 20, "c любым из слов")
      TextGadget(#Text_5, 10, 115, 135, 20, "без слов")
      StringGadget(#String_6, 160, 40, 420, 20, "")
      StringGadget(#String_7, 160, 65, 420, 20, "")
      StringGadget(#String_8, 160, 90, 420, 20, "")
      StringGadget(#String_9, 160, 115, 420, 20, "")
      ButtonGadget(#Button_15, 165, 270, 235, 25, "Начать поиск")
      HyperLinkGadget(#HyperLink_16, 5, 320, 280, 20, "Самый точный поиск", #Blue, #PB_HyperLink_Underline)
      GadgetToolTip(#HyperLink_16, "В буфере обмена будет выбранный форум")
 
      ContainerGadget(#Container_10, 10, 190, 600, 70)
        OptionGadget(#Option_11, 5, 5, 205, 15, "Русский форум"): SetGadgetState(#Option_11,1)
        OptionGadget(#Option_12, 5, 25, 205, 15, "Английский форум")
        OptionGadget(#Option_13, 210, 5, 205, 15, "Немецкий форум")
        OptionGadget(#Option_14, 210, 25, 205, 15, "Французский форум")
        OptionGadget(#Option_17, 420, 5, 205, 15, "Архив кодов PB")
        OptionGadget(#Option_18, 420, 25, 205, 15, "Весь Интернет")
      CloseGadgetList()
    ;EndIf
  EndIf
EndProcedure
 
OpenWindow_Window_0()
 
;{- Event loop
Repeat
  Event = WaitWindowEvent()
  Select Event
    ; ///////////////////
    Case #PB_Event_Gadget
      EventGadget = EventGadget()
      EventType = EventType()
      If EventGadget = #Frame3D_1
      ElseIf EventGadget = #Button_15
        If GetGadgetState(#Option_11)
           Forum$="http://www.google.ru/search?q=site%3Ahttp%3A%2F%2Fpurebasic.info%2FphpBB2+I "
           ElseIf  GetGadgetState(#Option_12)
           Forum$="http://www.google.ru/search?q=site%3Ahttp%3A%2F%2Fwww.purebasic.fr%2Fenglish+I "
           ElseIf  GetGadgetState(#Option_13)
           Forum$="http://www.google.ru/search?q=site%3Ahttp%3A%2F%2Fwww.purebasic.fr%2Fgerman+I "
           ElseIf  GetGadgetState(#Option_14)
           Forum$="http://www.google.ru/search?q=site%3Ahttp%3A%2F%2Fwww.purebasic.fr%2Ffrench+I "
           ElseIf  GetGadgetState(#Option_17)
           Forum$="http://www.google.ru/search?q=site%3Ahttp%3A%2F%2Fpurearea.net%2Fpb%2FCodeArchiv%2F+"
           ElseIf  GetGadgetState(#Option_18)
           Forum$="http://www.google.com/search?hl=ru&q=+%23"
           
        EndIf  
         
           
            If Len(GetGadgetText(#String_6))>2
                Inquiry1$=Chr(32)+"+"+URLEncoder(GetGadgetText(#String_6))
                Else
                Inquiry1$=""
            EndIf
            If Len(GetGadgetText(#String_7))>2
                Inquiry2$=Chr(32)+"+"+Chr(34)+URLEncoder(GetGadgetText(#String_7))+Chr(34)
                Else
                Inquiry2$=""
            EndIf
            If Len(GetGadgetText(#String_8))>2
             For i=1 To Len(GetGadgetText(#String_8))
                slovo$=StringField(GetGadgetText(#String_8), i, " ")
                If Len(slovo$)
                Inquiry3$=Inquiry3$+" | "+slovo$
                EndIf
             Next i
             Inquiry3$=URLEncoder(Inquiry3$)
            Else
                Inquiry3$=""
            EndIf
            If Len(GetGadgetText(#String_9))>2
            For i=1 To Len(GetGadgetText(#String_9))
                slovo$=StringField(GetGadgetText(#String_9), i, " ")
                If Len(slovo$)
                Inquiry4$=Inquiry4$+" -"+slovo$
                EndIf
             Next i
             Inquiry4$=URLEncoder(Inquiry4$)
            Else
                Inquiry4$=""
            EndIf
            Inquiry$= Forum$+Inquiry1$+Inquiry2$+Inquiry3$+Inquiry4$
           
            RunProgram(Inquiry$)
       
             
      ElseIf EventGadget = #HyperLink_16
        If GetGadgetState(#Option_11)
           SetClipboardText("http://purebasic.info/phpBB2")
           ElseIf  GetGadgetState(#Option_12)
           SetClipboardText("http://www.purebasic.fr/english")
           ElseIf  GetGadgetState(#Option_13)
           SetClipboardText("http://www.purebasic.fr/german")
           ElseIf  GetGadgetState(#Option_14)
           SetClipboardText("http://www.purebasic.fr/french")
           ElseIf GetGadgetState(#Option_17)
           SetClipboardText("http://purearea.net/pb/CodeArchiv/English.html")
           ElseIf GetGadgetState(#Option_18)
        EndIf
      RunProgram("http://www.google.com/advanced_search")
      EndIf
    ; ////////////////////////
    Case #PB_Event_CloseWindow
      EventWindow = EventWindow()
      If EventWindow = #Window_0
        CloseWindow(#Window_0)
        Break
      EndIf
  EndSelect
ForEver
;
;}
 



Последний раз редактировалось kvitaliy Вт янв 22, 2013 1:46 pm, всего редактировалось 1 раз.

Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн дек 21, 2009 7:28 pm 
Не в сети
профессор
Аватар пользователя

Зарегистрирован: Пн сен 07, 2009 10:00 pm
Сообщений: 1046
Откуда: Николаев
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
Классная программа получилась.

За время изучения PureBasic скопилось столько кодов,
не помню где скачал.

А тут выделил фрагмент или весь код, включил поиск, и сразу
попадаешь куда надо.

_________________
www.mirashic.narod.ru
Первое знакомство с PB


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср дек 23, 2009 9:59 am 
Не в сети
доцент
Аватар пользователя

Зарегистрирован: Сб июл 18, 2009 2:26 pm
Сообщений: 68
Откуда: Воронеж
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
Молодец!


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Сб фев 16, 2013 11:23 pm 
Не в сети
профессор
Аватар пользователя

Зарегистрирован: Вс дек 09, 2012 9:02 pm
Сообщений: 771
Откуда: Дагестан
Благодарил (а): 0 раз.
Поблагодарили: 11 раз.
Пункты репутации: 0
А у меня не работает. Получаю такое сообщение


Вложения:
.png [5.89 KiB]
Скачиваний: 92
Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Ср май 03, 2017 5:45 am 
Не в сети
профессор

Зарегистрирован: Вт май 13, 2014 4:12 am
Сообщений: 669
Благодарил (а): 75 раз.
Поблагодарили: 20 раз.
Пункты репутации: 5
модеров много, а фотку некому выложить


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

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


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

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


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

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