Добро пожаловать к нам в гости! Наш сайт посвящён программе NeoBook, с помощью которой вы легко сможете создавать собственные мультимедиа-приложения без необходимости изучать сложные языки программирования! Зарегистрируйтесь, чтобы стать членом нашего сообщества.
Помогите пожалуйста! Дело в том что я часто лазею в инете и иногда нахожу интересные статьи или к примеру описание интересуещей меня программы и тогда мне приходится выделять нужный мне текст копировать в буфер потом вставлять его в блокнот и за тем сохранять. Как вы наверное понимаете это довольно не удобно. И в связи с этим я пытаюсь создать прогу (которая бы висела в треи) для своих заметок, в проге присутствует объект список, текстовое поле и несколько кнопок пока три: "Новая" - (лев.кноп.мыши создаёт новый пункт в списке с именем "Заметка") (прав.кноп.мыши появляется окошко для ввода своего имени для пункта) "Вставить" - вставка текстовой инфы из буфера в текстовое поле "Очистить" - отчищает текстовое поле Задумка такая, я копирую в буфер выделеный текст со страницы (в браузере) к примеру "статью о переменных в Neobook" затем открываю свою прогу нажимаю кнопку "Вставить" при этом мне нужно чтобы этот текст был связан с определённым пунктом например назовём этот пункт - "Переменные в Neobook" и чтобы при последующем выборе этого пункта в текстовом поле появлялась више упомянатуя статья (статью о переменных в Neobook). И вот тут та и возникает проблема, я никак не могу связать нужный мне пункт в списке с нужной мне информацией, мне уже кажется что это невозможно, либо нужно использовать не объект список а что нибудь другое. Вообщем если возможно каким либо образом связать пункт списка с инфой в текстовом поле то подскажите пожалуйста как это сделать. За ранее благодарен, с уважением за то что вы делаете Woha28!
Применим небольшой трюк с динамическим массивом переменных. При каждом нажатии кнопки в список будет добавляться статья, а ее содержимое (текст из буфера) класться в массив. При выборе пункта списка номер его элемента [L] соотносится с номером переменной в массиве [i] где хранятся тексты, в результате в текстовое поле загружается содержимое переменной из массива с нужным текстом. Суть трюка: "[Texts_[L]]" - номер элемента в массиве переменных сам является переменной, вот через нее вы и управляете, выбирая нужное содержимое для отображения. Единственная неувязка - такой формат переменной текстовое поле не понимает, поэтому приходится делать через: setvar "[Texts]" "[Texts_[L]]", и отображать уже переменную [Texts]. Остальные моменты думаю сами доделаете... Если захотите, можете сделать полную автоматизацию - выделили текст, щелкнули иконку в трее - остальное прога сделает за вас - занесет в список, сохранит в файл и так далее...
Огромное спасибо за то что решили мне помочь! Вы не поверите но мне самому только что пришла в голову идея задействовать массивы переменных для сохранения из буфера но, во первых я не знал как создать масив, а во вторых не знал как их связать пунктом списка. Так что вы мне очень помогли по крайней мере у меня уже выресовываеться более менее ясная картина как осуществить мою задумку. Но всё же немного непонятно, поэтому я прикрепил два файла. Один (Notes.zip) это непосредственно мой проект (визуальный вид это только наброски, так меня пока волновал только код, потом естествено я его переделаю) хочу чтобы вы наглядно увидели то что я хотел сделать. Второй (TrayText.zip) это маленькая программа собственно то же самое только написана помоему на С++ имено при её использовании мне захотелось создать такую же только не много под себя. Ну и пользуясь случам что встретил кого-то кто разбирается в Neobook хотел спросить, возможно ли в Neobook к примеру даже в моём проекте сделать так чтобы прога висела в трее и при нажатии горяч.клавиши допустим F4 делала определённые действия, но при этом не активировалось, то есть к примеру я сижу в инете у меня активное окно моей "Оперы" я выделяю текст копирую в буфер нажимаю F4 текст сохранён по нашей с вами задумке, но окно "Оперы" попрежнему активно. То есть можно ли создать в Neobook прогу по принципу скриптов AutoHotkey (очень надеюсь что вы знаете что такое AutoHotkey чтобы смогли понять мой вопрос)очень надеюсь что вы мне ответите. С благодарностью за оказаную помощь Woha28
возможно ли в Neobook к примеру даже в моём проекте сделать так чтобы прога висела в трее и при нажатии горяч.клавиши допустим F4 делала определённые действия, но при этом не активировалось, то есть к примеру я сижу в инете у меня активное окно моей "Оперы" я выделяю текст копирую в буфер нажимаю F4 текст сохранён по нашей с вами задумке, но окно "Оперы" попрежнему активно.
Да, в принципе, подобное возможно! Для этого потребуется воспользоваться вот этим плагином. Правда, в таком "слепом" режиме непонятно как определять что и чему должно соответствовать при сохранении, т.к. характер материалов в буфере обмена может быть совершенно различным. - А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
что вы заморачиваетесь, можно сделать еще лучше - добавить в контекстное меню пункт "Копировать в мою прогу" да и все... как это сделать чтобы работало - это уже другой вопрос, но это реально.
Добавлено (16 Декабрь 2009, 06:08) --------------------------------------------- и отпадет необходимость в этом
Quote (Peter)
как определять что и чему должно соответствовать при сохранении, т.к. характер материалов в буфере обмена
Ну да, в первом случае он выделил текст статьи об ананасах в Сингапуре, а в другом случае - текст с колдовскими заклинаниями... И как быть? Чего и, главное - КАК, будем разносить по категориям, и по каким категориям?
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Я имею в виду добавить пункт именно в контекстное меню Оперы. Т.е. это решение не будет универсальным...
Добавлено (16 Декабрь 2009, 06:18) --------------------------------------------- а зачем чтото разносить? не было речи об этом. все это будет делать прога как угодно, я лишь предлагаю вставить в контекстное меню Оперы такой пункт да и все. По-сути это даже не имеет отношения к необуку и проге, туда будет просто посылаться содержимое буфера.
Добавлено (16 Декабрь 2009, 06:22) --------------------------------------------- короче это вариант более сложный и проблемный, пока лучше использовать плагин до выяснения всех обстоятельств.
вставить в контекстное меню Оперы такой пункт да и все
Я не понимаю ЗАЧЕМ и ЧТО ЭТО ДАСТ?
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
а непосредственного отправления буфера в прогу при выборе пункта меню
Только пока не очень понятно как приложение необук автоматически сообразит ЧТО нужно делать с этими "буферами" без специальной подсказки... Но, лучше, не станем снова разворачивать длиннную и безрезультатную дискуссию, которая потом и самому автору сабжа станет совсем неинтересной. Проходили уже не раз! Подождем-с...
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Я копирую только текст. В принципе у меня есть скрипт AutoIT3 который по F4 создаёт текстовый файл с содержимым буфера причём присваевает ему имя первых 10-ти символов текста из буфера, а по F9 появляется стандартное окно сохранения. Но во первых нет интерфеса, во вторых файлы теряются, а в третьих мне очень нравится что-то делать своими руками.
Только пока не очень понятно как приложение необук автоматически сообразит ЧТО нужно делать с этими "буферами" без специальной подсказки...
а как она будет это понимать если вы нажмете F4 ? ну ладно, автор видимо хочет сделать универсальный вариант, так что контекстное меню оперы отпадает. Хотя можно было бы добавить в виде опции... -- а понял... при добавке в оперу пункта меню мы можем задать команды которые надо выполнить при копировании. вот так и будет прога понимать что делать. Как задавать вопросы
Подобную вещь (и даже лучше, и даже с интерфейсом ) вполне можно сделать и в NeoBook. Но сначала нужно определиться с тем, что именно вы хотите получить, и в зависимости от этого решать как именно это реализовывать. Например, если предплагается не только просто бессмысленное хаотичное сохранение, а накопление, систематизация и хранение материалов, то намного разумнее ориентироваться на работу с базами данных, а не с простыми текстовыми файлами.
Очень просто: если програ активна, то ей самой можно назначить реакцию на нажатие F4, а если неактивна, то - плагин в помощь..
Quote (DEMBEL)
при добавке в оперу пункта меню мы можем задать команды которые надо выполнить при копировании. вот так и будет прога понимать что делать
Гм... А по-подробнее плиз...
И нафига нужна Опера? Можно вообще все сделать в самой NeoBook!!!
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
И нафига нужна Опера? Можно вообще все сделать в самой NeoBook!!!
да афтар говорит что оперой пользуется и соотв-но тексты в ней выделяет, вот я и предложил всунуть в оперу конт. меню! Выделил текст->выбрал пункт меню->все отослалось в прогу Как задавать вопросы
На счёт контекстного меню в опере идея хорошая я бы очень хотел знать как добавлять свои каманды в контекстного меню оперы (на будующее я бы это реализовал по своиму)но я лишь привёл пример с оперой хотя это не обезательно бедет опера текст я могу скопировать и из какой нибудь книги в формате pdf или chm.Так что контекстное меню в опере отподает по крайней мере для этого моего проекта.
Хотя... Лепить в NeoBook свой собственный броузер только для того, чтобы "иногда" копировать и сохранять текст, слишком уж хлопотное, да и неразумное, занятие... - А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
И в связи с этим я пытаюсь создать прогу (которая бы висела в треи) для своих заметок, в проге присутствует объект список, текстовое поле и несколько кнопок
Сам давно хотел такую программку сделать, да все руки не доходят...
Если вы все таки хотите сделать, чтобы заметка добавлялась в программу по горячей клавише, то вам необходим плагин упомянутый в 4 сообщении. Сам код добавления я бы реализовал так:
Где [name] это заголовок заметки в листбоксе, а [note_[kol-vo]] это сам текст заметки с индексом ([kol-vo]), который нужен чтобы определять, какую грузить заметку при выборе соответствующего пункта в листбоксе.
Чтоб все было понятно сделал небольшой пример в прикреплении... (Для работоспособности примера не забудьте установить плагин)
Quote (DEMBEL)
а понял... при добавке в оперу пункта меню мы можем задать команды которые надо выполнить при копировании. вот так и будет прога понимать что делать.
Это как? Где эти команды задаются, и как НБ поймет когда ей нужно начать выполнять эти команды?? Можно поподробней, очень интересно....
В Опере можно слепить свое собственное контекстное меню. Оно представляет из себя ini-файл, который подключается в Настройки->Дополнительно->Панели, внизу есть поле "Профили меню". О синтаксисе и правилах написания файла меню смотрите в инете. Как задавать вопросы
В Опере можно слепить свое собственное контекстное меню
да есть такая штука, но у меня получилось только один раз простой пример(где то в сети находил), но со сложными фичами нифига не получилось Кстати, а НБ ведь можно делать плаги для браузера (оказывается никак )
Сообщение отредактировано sp3d - Ср, 16 Декабря 2009, 18:37
Если в него добавить поиск например до первого пробела и с сохранением в текст, то будет более-менее сносный проектчик
Ну это уж кому как надо, пусть каждый делает под свои потребности, мое (наше) дело объяснить или наглядно показать.
Quote (DEMBEL)
В Опере можно слепить свое собственное контекстное меню.
Да я не про Оперу, я говорю как НБ поймет что ей нужно делать с полученным из Оперы текстом (из буфера) когда мы тыкнем на соответствующий пункт в контекстном меню Оперы?
В целом, интересный пример! Довольно простая получилась реализация - это плюс!
Только в примере, в свойствах текстового поля "Описание" (в пути к файлу "123.rtf") надо [Embedded]заменить на [PubDir], иначе ни записывать, ни отображать не будет.
____ Однако, все равно любопытно посмотреть, что у Woha28 получилось в итоге, с учетом стольких замечательных предложений, высказанных участниками выше. Идея создать прогу, которая позволяла бы эффективно работать с буфером обмена(максимально автоматизированно и так, чтобы удобно было потом пользоваться результатами), позволяя организовать сбор материалов по какой-либо теме - это замечательная идея!
Только в примере, в свойствах текстового поля "Описание" (в пути к файлу "123.rtf") надо [Embedded]заменить на [PubDir], иначе ни записывать, ни отображать не будет.
Не-а. Там специально так задумано! Если не верите, скомплируйте проект, не меняя в нем ничего. ЕХЕ файл поместите в "левую" папку, и запустите! Можете сколь угодно слов и описаний добавлять! За слова отвечаю! Школа NeoBook - второе дыхание! Мы открылись, спустя три года, с новыми силами, с новыми знаниями, с новым сайтом!
Там специально так задумано! Если не верите, скомплируйте проект, не меняя в нем ничего.
Если использовать [Embedded], то при компиляции NB не находит файл: C:\Documents and Settings\Админ\Рабочий стол\АрхNeoBook\123.RTF Этот путь указан у Вас в свойствах вложенных файлов (Проект/Вложенные файлы), и поскольку у Вас там действительно есть файл, то всё и работает, а на любом другом компе работать не будет...
Скомпилированный проект также данный файл не обнаруживает, что естественно.
Таймер, эээ, ну это типа для вывода системных сообщений. В следующй версии поймете. Я там гораздо больше возможностей добавил! А насчет вложенного файла, если его вложить в проект, и скомпилировать, оставив путь через [Embedded] все равно будет работать, так как в него ничего не записывается, он только для отображения длинных описаний. В след. версии будет гораздо больше возможностей! ps и база данных не нужна :)) Школа NeoBook - второе дыхание! Мы открылись, спустя три года, с новыми силами, с новыми знаниями, с новым сайтом!
Странно, но пока я по совету Вадима, не заменил в пути [Embedded]123.RTF на [PubDir]123.RTF проект не фурычил: не выводились ни список, ни описание слов..
P.S. А возможно ли в текстовом файле (раз уж это rtf-формат) делать абзацы и изменять цвет шрифта? Допустим, если opisanie и slova будут иметь .rtf формат, а не .txt
Например:
"Медь
элемент побочной подгруппы первой группы, четвертого периода периодической системы химических элементов Д. И. Менделеева, с атомным номером 29. Обозначается символом Cu (лат. Cuprum).
Простое вещество медь (CAS-номер: 7440-50-8) — это пластичный переходный металл золотисто-розового цвета (розового цвета при отсутствии оксидной пленки). C давних пор широко применяется человеком."
Ведь насколько я понимаю, текст там выдирается только построчно, следовательно абзацы не допускаются.
Windows 7 32-bit SP1, Neobook 5.6.2 rus, Mozilla Firefox 4
Сообщение отредактировано JozaFF - Вс, 30 Мая 2010, 22:52
Таймер, эээ, ну это типа для вывода системных сообщений.
Понятно.
Quote (skan)
если его вложить в проект, и скомпилировать, оставив путь через [Embedded] все равно будет работать
Попробовал, всё равно не работает. И, честно говоря, я не могу понять, как он должен работать, ведь предполагается, что информация из него не просто извлекается, а записывается. Как можно записывать информацию во вложенный файл в скомпилированном проекте??? Бесплатный онлайн курс программирования в VisualNEO Win (NeoBook)