Форум: "Основная";
Текущий архив: 2006.12.31;
Скачать: [xml.tar.bz2];
ВнизКак встроить в свою програму переводчик Pragma Найти похожие ветки
← →
integeri (2006-11-10 10:31) [0]Есть хороший переводчик Pragma , но нужно перевод делать через свою програму, тоесть єсть база даних, пользователь вносить текст, и моя програма в одну ячейку вставляеть текст как есть и сразу делает перевод во вторую ячейку. Может ктото сталкивался с такой задачкой!!!
← →
Орион © (2006-11-10 10:35) [1]> [0] integeri (10.11.06 10:31)
Есть ли на сайте производителя переводчика API к нему?
Может ли выступать переводчик в роли ActiveX объекта?
Есть ли консольная версия переводчика?
← →
integeri (2006-11-10 10:42) [2]
> Орион © (10.11.06 10:35) [1]
Вот именно на сайте никакой информации нет.
> Есть ли консольная версия переводчика?
-наверное нет
> Может ли выступать переводчик в роли ActiveX объекта?
- установил програму , и прошолся по всех ActiveX которие установление , кажися нет там новых
← →
Орион © (2006-11-10 10:44) [3]> [2] integeri (10.11.06 10:42)
тогда скорей всего никак :(
← →
ЮЮ © (2006-11-10 10:44) [4]
> Может ктото сталкивался с такой задачкой!!!
В базу данных - автоматический перевод? Ты наверное - первый. Переводом, да ещё хранящимся в БД, должны заниматься профессиональные переводчики.
З.Ы. А они тем временем проги в Дельфи клепают :)
← →
integeri (2006-11-10 10:45) [5]знаю што програма добавляет свою менюшку в програмы:IE,notepad,MS Word
← →
integeri (2006-11-10 10:46) [6]
> ЮЮ © (10.11.06 10:44) [4]
например какие
> профессиональные переводчики
← →
Elen © (2006-11-10 10:49) [7]
> integeri
Я делаю так : У меня Прагма 4 - Программно запускаю pragma.exe он свою иконку запуздыриват в часики. Далее в своей проге выделяю нужный для перевода текст и программно кликаю по запуздыренной иконке (можно и по другому конечно). В прагме предварительно выставляю настройки - сразу брать выделенный текст, сразу переводить и сразу копировать в буфер обмена. Далее закрываю прагму и беру текст из буфера. Трудность только в определении закончила ли прагма переводить, это сами...
← →
integeri (2006-11-10 10:50) [8]От нашол код
* Copyright (C) 1998 Netscape Communications Corporation. All
* Rights Reserved.
*
* Contributor(s):
* Trident Software, trident@kagi.com, original author
*/
var pragmgr = Components.classes["@trident.com.ua/pragma;1"].getService();
pragmgr = pragmgr.QueryInterface(Components.interfaces.ipPragma);
function toTranslate()
{
var doc = document.commandDispatcher.focusedWindow.content.document;
var pframes = document.commandDispatcher.focusedWindow.content.frames;
// alert ("this object is: " + pframes);
var count = pframes.length;
// alert ("frames count = " + count);
if ( count > 0 ) {
for (var i=0; i<count; i++) {
// alert (pframes.frames[i].document);
// alert (pframes.frames[i].document.body.innerHTML);
pragmgr.TranWindow(pframes.frames[i].document.body.innerHTML);
pframes.frames[i].document.body.innerHTML = pragmgr.TranHtml;
}
} else {
pragmgr.TranWindow(doc.body.innerHTML);
doc.body.innerHTML = pragmgr.TranHtml;
}
}
function toOptions()
{
pragmgr.Options();
}
function toAbout()
{
pragmgr.About();
}
← →
Ketmar © (2006-11-10 11:00) [9]>[7] Elen(c) 10-Nov-2006, 10:49
>Трудность только в определении закончила
>ли прагма переводить, это сами...
да? только в этом? поделись эксклюзивным универсальным методом определения координат любой иконки в области уведомлений, а? можешь даже статью написать. прославишься. без дураков прославишься.
← →
integeri (2006-11-10 11:10) [10]код вище для интеграции в мозилу
← →
Elen © (2006-11-10 11:35) [11]
> Ketmar
Так, Пардон, Немного не так было 8)
Запускался PragmaBar и висел на экране. Далее EnumchildWindow в этом баре находилась кнопка от блокнота. по ней давался клик WM_LBUTTONDOWN, далее запускался блокнот и там уже манипуляциями с менюшкой проводился перевод. Знаю это не совсем правильно так делать, но нужно было чето быстро решать - решили так...
← →
Ketmar © (2006-11-10 11:45) [12]>[11] Elen(c) 10-Nov-2006, 11:35
>Так, Пардон, Немного не так было 8)
понял. вопрос снят. %-)
← →
integeri (2006-11-10 11:53) [13]
> Elen © (10.11.06 11:35) [11]
можна кусочек кода
← →
Elen © (2006-11-10 12:17) [14]
> integeri
Можна : Запуск блокнота с прагмой в миню :unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
ListBox1: TListBox;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public ChildElements:string;
{ Public declarations }
end;
function enumChildWindow_Crtfox_Enum(h:THandle;l:integer):boolean; stdcall;
var win:hwnd;
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
end;
//********** FUNCTION **********
function enumChildWindow_Crtfox_Enum;
begin
form1.ChildElements:=form1.ChildElements+inttostr(h)+" ";
result:=true;
end;
//********** END FUNCTION ******
procedure TForm1.FormCreate(Sender: TObject);
var w:hwnd; s:string;
begin
w:=FindWindow("PragmaBarClass","");
EnumchildWindows(w,@enumChildWindow_Crtfox_Enum,0);
ListBox1.Items.CommaText :=ChildElements;
w:=strtoint(ListBox1.Items[2]);
SendMessage(w, WM_LBUTTONDOWN,MK_LBUTTON,5);
SendMessage(w, WM_LBUTTONUP,MK_LBUTTON,5);
{}
w:=FindWindow("Notepad","Áåçûìÿííû& #233; - Áëîêíîò");
w:=FindWindowEx(w,0,"Edit","");
end;
end.
← →
Elen © (2006-11-10 12:19) [15]
> integeri
Дальше на твое усмотрение открывать файл или вставлять из клипбоарда
← →
integeri (2006-11-10 12:41) [16]я запустил но чото мне в ListBox1 загнало какието циферки, чо с ними то делать
← →
Elen © (2006-11-10 12:46) [17]
> integeri
Тем примером Я тебе наводку даю как можно сделать.w:=strtoint(ListBox1.Items[2]);
SendMessage(w, WM_LBUTTONDOWN,MK_LBUTTON,5);
SendMessage(w, WM_LBUTTONUP,MK_LBUTTON,5);
Цыферки те - хендели. второй хендель это копка нотепада, а этот код должен ей послать клик
← →
Anatoly Podgoretsky © (2006-11-10 13:10) [18]> integeri (10.11.2006 10:31:00) [0]
К авторам обращались (обращался)?
← →
Anatoly Podgoretsky © (2006-11-10 13:11) [19]> Орион (10.11.2006 10:44:03) [3]
Почему, что все пути проверены, включая покупку фирты изготовителя?
← →
Anatoly Podgoretsky © (2006-11-10 13:12) [20]> integeri (10.11.2006 10:45:05) [5]
Значит возможно и здесь сильно пахнет СОМ.
Надо обращаться к авторам.
← →
Anatoly Podgoretsky © (2006-11-10 13:13) [21]> integeri (10.11.2006 10:50:08) [8]
Вот это видишь
> Copyright (C) 1998 Netscape Communications Corporation. All Rights Reserved.
← →
Орион © (2006-11-10 14:26) [22]> [19] Anatoly Podgoretsky © (10.11.06 13:11)
Все прямые пути прорверены. Дальше - извращения :)
← →
integeri (2006-11-13 10:25) [23]Автор сказал што ито будет стоить, но несказал сколько , жду ответ на сколько потянит???
← →
Anatoly Podgoretsky © (2006-11-13 10:35) [24]> integeri (13.11.2006 10:25:23) [23]
Если у него массовое распространение, то вряд ли свыше 200 зеленых, или может зависить от количество экземпляров программы.
← →
Наиль © (2006-11-13 16:10) [25]> Значит возможно и здесь сильно пахнет СОМ.
Судя по Notepad, COM"ом здесь и не пахнет.
Просто программа избирательно втыкает свой пункт в чужое меню.
А вот для получения текста из IE и Word, Pragma вполне может воспользоваться предоставленым COM"ом.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2006.12.31;
Скачать: [xml.tar.bz2];
Память: 0.51 MB
Время: 0.042 c