C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Помогите разобраться
Alexander
Отправлено: 01.07.2006, 21:43


Не зарегистрирован







Точнее помогите перевести с Delphi на C++Builder вот такой код
CODE

procedure TForm1.SpeedButton5Click(Sender: TObject);
var
 WordApp: _Application;
 Dlg: Dialog;
begin
 if re.Text='' then exit;
 WordApp := CoWordApplication.Create;
 WordApp.Documents.AddOld(EmptyParam, EmptyParam);
 WordApp.Visible := True;
 Dlg := WordApp.Dialogs.Item(wdDialogToolsCreateEnvelope);
 OleVariant(Dlg).AddrText :=remindex+#13+remstreet;
 Dlg.Show(EmptyParam);
end;
ShibaOn
Отправлено: 02.07.2006, 06:22


Дежурный стрелочник

Группа: Участник
Сообщений: 37



Что-то типа этого smile.gif

CODE

void __fastcall TForm2::SpeedButton5Click(TObject *Sender)
{
_Application *WordApp;
Dialog *Dlg;

if (re->Text == "") {
 Exit();
}

WordApp = CoWordApplication->Create;
WordApp->Documents->AddOld(EmptyParam, EmptyParam);
WordApp->Visible = True;
Dlg = WordApp->Dialogs->Item(wdDialogToolsCreateEnvelope);
((OleVariant *)Dlg)->AddrText = remindex + "\n" + remstreet;
Dlg->Show(EmptyParam);
}
Guest
Отправлено: 02.07.2006, 07:16


Не зарегистрирован







Огромное сенк.
Стормозил )))было поздно спать хотелось biggrin.gif
Alexander
Отправлено: 02.07.2006, 10:26


Не зарегистрирован







чтото поторопился сказать что разобрался sad.gif
Выкидует ошибку на
CoWordApplication.Create
ShibaOn
Отправлено: 02.07.2006, 14:52


Дежурный стрелочник

Группа: Участник
Сообщений: 37



Да это и я что-то ступил (просто проснулся рано), там надо написать CoWordApplication->Create() — скобки тоесть поставить (в сишнике процедур нету)
Grigoriy
Отправлено: 02.07.2006, 18:20


Мастер участка

Группа: Участник
Сообщений: 381



QUOTE (ShibaOn @ 02/07/2006, 14:52)
Да это и я что-то ступил (просто проснулся рано), там надо написать CoWordApplication->Create() — скобки тоесть поставить (в сишнике процедур нету)

Без скобок будет указатель на функцию.
ShibaOn
Отправлено: 02.07.2006, 19:23


Дежурный стрелочник

Группа: Участник
Сообщений: 37



Я так и понял smile.gif
Alexander
Отправлено: 03.07.2006, 23:08


Не зарегистрирован







вот помогли преобразовать так все работает запускается
CODE

void __fastcall TForm1::Button1Click(TObject *Sender)
{
 _Application *WordApp;
 Dialog *Dlg;

 if re.Text.IsEmpty() return;
 CoWordApplication::Create(&WordApp);
 WordApp->Documents->AddOld(EmptyParam, EmptyParam);
 WordApp->Visible=true;
 Dlg=WordApp->Dialogs->Item(wdDialogToolsCreateEnvelope);
 // ??? OleVariant(Dlg).AddrText :=remindex+#13+remstreet;
 Dlg->Show(EmptyParam);
}

вот тока со строкой
OleVariant(Dlg).AddrText :=remindex+#13+remstreet;
касяк немогу преобразовать подскажите как быть
на такой вариант тоже ругается
CODE

void __fastcall TForm2::SpeedButton5Click(TObject *Sender)
{
_Application *WordApp;
Dialog *Dlg;

if (re->Text == "") {
Exit();
}

WordApp = CoWordApplication->Create;
WordApp->Documents->AddOld(EmptyParam, EmptyParam);
WordApp->Visible = True;
Dlg = WordApp->Dialogs->Item(wdDialogToolsCreateEnvelope);
((OleVariant *)Dlg)->AddrText = remindex + "\n" + remstreet;

или какую нить библиотеку подключать надо

Отредактировано olegenty — 04/07/2006, 07:03
Guest
Отправлено: 04.07.2006, 04:20


Не зарегистрирован







AddrText и re->Text какого типа у тебя?
Alexander
Отправлено: 04.07.2006, 22:29


Не зарегистрирован







AddrText это свойство Worda предающая строку в поле адресата
а re->Text String
Просто самое семешное нигде немогу найти примера печати конверта в Word из С++ Builder
ShibaOn
Отправлено: 05.07.2006, 04:20


Дежурный стрелочник

Группа: Участник
Сообщений: 37



Если AddrText — LPCHAR, то оператор + применять бессмыслено, он же не будет складывать указатели, точнее сложить то он значения адресов сможет, но что из этого получиться... Попробуй использовать sprintf из stdio.h.

А с re->Text чего-то я ступил, мог бы и по IsEmpty() догадаться smile.gif
Alexander
Отправлено: 05.07.2006, 08:44


Не зарегистрирован







а вообще никто чтоли раньше не печатал конверт в Wordе из своих приложений поделитесь примером если есть ато застрял на этой фигне сил нет уже

Вернуться в Вопросы программирования в C++Builder