h = FindWindow_("ProgMan", 0); h = GetWindow_(h, #GW_CHILD); PostMessage_(h, #WM_KEYDOWN, #VK_F5, 0);
Этот код нажимает на F5, а с CapsLock почему то не пролезает... Как можно нажать программно на эту клавишу?
PureBasic - форум |
Привет, Гость! Войдите или зарегистрируйтесь.
Вы здесь » PureBasic - форум » Вопросы по PureBasic » Вопросы новичка
h = FindWindow_("ProgMan", 0); h = GetWindow_(h, #GW_CHILD); PostMessage_(h, #WM_KEYDOWN, #VK_F5, 0);
Этот код нажимает на F5, а с CapsLock почему то не пролезает... Как можно нажать программно на эту клавишу?
А так ?
Procedure CreateSkrinAll() keybd_event_(#VK_CAPITAL, 0,0,0) Delay(150) ; пауза между нажали/отпустили keybd_event_(#VK_CAPITAL,0,#KEYEVENTF_KEYUP,0) EndProcedure OpenWindow(0, 0, 0, 100, 80, "Окно", #PB_Window_SystemMenu |#PB_Window_ScreenCentered ) HotKeysInit() ; Инициализация библиотеки HotKeys HotKeyAdd(WindowID(0), #VK_F5, @CreateSkrinAll(), "SkrinAll", 0,0,0) ; Перехват кнопки f5 Repeat Event=HotkeyWaitWindowEvent() Until Event=#PB_Event_CloseWindow
Отредактировано mirashic (30.09.2010 20:33:49)
Спасибо Олег! А пауза то зачем в процедуре, вроде и без нее нормально работает?
У меня эмуляция Ctrl+C без паузы не работает
А ну наверно там из-за того что сочетание из двух клавиш идет...
И еще один вопрос: Можно ли узнать как нибудь программно, физический CD_ROM или виртуальный?
Как можно нажать программно на эту клавишу
SimulateKeyPress(#VK_CAPITAL, 0, 0, 0, 0)
SimulateKeyPress(#VK_CAPITAL, 0, 0, 0, 0)
И за это спасибо.
Добрый вечер.
Помогите разобраться,
для работы программы нужен GIF файл, он лежит рядом с исполняемым файлом и всё прекрасно.
Как запихнуть его внутрь и с ним работать ?
Было-бы простое изображение - решается просто, а как быть с GIF ?
То есть, его надо запихнуть в exe, а во время работы изъять и получить абсолютный путь к нему.
Enumeration #Window_0 #Web EndEnumeration ;CatchImage(1, ?Im1, ?Im1End -?Im1 ) ;FileName$="loading25.gif" ;Buffer$=Space(512) ;GetFullPathName_(FileName$,Len(Buffer$),@Buffer$,@FilePart) ;img$ = PeekS(@Buffer$) OpenWindow (#Window_0, 0, 0, 380, 200,"Заглавие", #PB_Window_MinimizeGadget |#PB_Window_ScreenCentered) WebGadget(#Web, 0,0,380,200,"") img$ =GetCurrentDirectory()+"loading25.gif" Html.s + "<style>" Html.s + ".loading {padding-top: 10%;height: 600px;text-align: center;}" Html.s + "</style>" Html.s + "<div class='loading'><img src='"+img$+"' width='50' height='50' /></div>" SetGadgetItemText(#Web, #PB_Web_HtmlCode, Html.s) Repeat Event = WaitWindowEvent() If Event = #PB_Event_CloseWindow Break EndIf ForEver ;DataSection ;Im1: ;IncludeBinary "loading25.gif" ;Im1End: ;EndDataSection
То есть, его надо запихнуть в exe, а во время работы изъять и получить абсолютный путь к нему.
Не получается извлечь файл что-ли?
Не знаю как ?
If CreateFile(0,"Файл.gif") WriteData(0,?Im1, ?Im1End-?Im1) CloseFile(0) EndIf DataSection Im1: IncludeBinary "loading25.gif" Im1End: EndDataSection
Спасибо !
а как можно автоматически поставить что бы файлы скрытые не отображались.Заранее спасибо
У файлов и папок есть атрибут "Скрытый".
Вот его используй
я его и использую а вдруг у человека стоит в вид папки Показать скрытые файлы и тогда не подходит,вот я и спрашиваю как можно убратьс показывать на не показывать.
перепиши ОС или позвони Билл Гейтсу, а вообще в гугле такие вещи нужно искать
завтра с утра позвоню я думаю Билл уже освободится.=)
Он сказал что в новой OC всё исправит, сказал жди и ещё узнай как это сейчас можно сделать.
Добрый вечер.
Как отслеживать выделение текста на всём компьютере (в браузере, текстовом редакторе, и.т.д.) ?
Это для конкретного гаджета:
Enumeration #Window_0 #Editor #Timer EndEnumeration Procedure ProsWB() SendMessage_(GadgetID(#Editor), #EM_GETSEL, @Min,@Max) If Min<>Max If Min<Max xx=Max-Min Else xx=Min-Max EndIf lpText.s=Space(xx) SendMessage_(GadgetID(#Editor), #EM_GETSELTEXT, #Null, @lpText) Debug lpText EndIf EndProcedure OpenWindow (#Window_0, 0, 0, 380, 200, "Заглавие", #PB_Window_MinimizeGadget |#PB_Window_MaximizeGadget|#PB_Window_ScreenCentered|#PB_Window_SizeGadget) EditorGadget(#Editor,10,10,360,180) AddWindowTimer(#Window_0, #Timer, 100) Repeat Event = WaitWindowEvent() Window = EventWindow() Gadget = EventGadget() Select Event Case #PB_Event_Timer ProsWB() EndSelect If Event = #PB_Event_CloseWindow Break EndIf ForEver
SendMessage(hWnd,Msg,wParam, lParam);
hWnd - Дескриптор окна, оконная процедура которого примет сообщение.
То есть, наверно надо перехватывать идентификатор активного окна, или как то по другому ?
Тут надо наверное определять идентификатор гаджета, над которым находится курсор:
GetCursorPos_(P.POINT) Handle=WindowFromPoint_(P\X|(P\Y<<32))
В принципе мне надо только регистрация выделения текста...
Отлеживаю нажатие левой кнопки и перемешение курсора.
Правда регистрирует и на пустом поле...
Global rez.l Procedure ProsWB() GetCursorPos_(P.POINT) xx.l= P\X If GetKeyState_(#VK_LBUTTON)>1 If rez.l<>xx Debug "Выделели текст" EndIf EndIf rez=xx EndProcedure OpenWindow (0,0,0,0,0, "Заглавие",#PB_Window_Invisible) AddWindowTimer(0, 1, 100) Repeat Event = WaitWindowEvent() Select Event Case #PB_Event_Timer ProsWB() EndSelect ForEver
Ребят подскажите пожалуйста! Нужно забить в переменную неизвестный текст из файла! Известно что текст который нужен расположен между "<div><div id='news-id-" неизвестный текст "</div> </div>" знаю что это делается через FindString , пробовал , но ни чего это не дало! Если кто знает как это делается то помогите!
Не пойму почему тебя не устраивает этот код..все отлично робит:
text.s="<div><div id='news-id-любой текст...</div></div>" onetext.s=RemoveString(text, "<div><div id='news-id-") finaltext.s=RemoveString(onetext, "</div></div>") MessageRequester("",finaltext)
В друпии есть функция:
Описание:
Возвращает строку между двумя строками
Пример:
MessageRequester("Between",Between("Droopy", "Dr", "py"))
а вообще не понял, что ты хочешь ?
Раньше все нормально вроде получалось поставить кнопку шаблоны на панель, а теперь ни в какую не хочет... Да и вообще панель инструментов не редактируется. Кто нибудь(у кого на панели есть что то свое установленное) пожалуйста скиньте файл настроек, ну или часть файла PureBasic.prefs он по адресу: C:\Users\имя пользователя\AppData\Roaming\PureBasic ( в семерке) в XP должно быть что то похожее.
Интересует пункт: [ToolbarNew]
Перевёл для себя друпию, не кому не надо ? (чисто гугловский перевод).
Оригинал весит 425 КБ а перевод 974 КБ ?
Примеры практически все рабочие, только синтаксис поменялся, с первого раза не запустятся...
У меня тоже в 4.41 - шаблон пропал...
В XP у меняhttp://www.mirashic.narod.ru/settings.prefs
Спасибо.
Не получается вообще с шаблоном, уже не один час сижу блин... Че то они намутили в новой версии.
Вопросы новичка (продолжение…) | Вопросы по PureBasic | 29.06.2024 |
Скорее, это теоретический вопрос о правах в директории. | OffTop | 16.09.2022 |
Вопрос по отладке | Вопросы по PureBasic | 26.01.2017 |
Три вопроса по созданию браузера. | Вопросы по PureBasic | 01.11.2010 |
вопрос о точности типов данных | Вопросы по PureBasic | 20.05.2021 |
Вы здесь » PureBasic - форум » Вопросы по PureBasic » Вопросы новичка