Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 27.11.2010, 14:16
true true вне форума
Новичок
 
Регистрация: 03.10.2010
Сообщения: 64
Репутация: 10
По умолчанию ShowMessage + checkbox?

или как сделать чтобы в дилоговом окне был чекбокс мол не выводить снова?

вот код:
Код:
procedure TForm1.ToolButton4Click(Sender: TObject);
var
filename:OleVariant;
j,a: integer;
begin
showmessage('Выберете файл с шаблоном отчета. Он находится в корневом каталоге с программой (otchet.doc)');

if OpenDialog1.Execute
then
filename:=OpenDialog1.FileName;



WordApplication1.Connect;

WordApplication1.Documents.Open(FileName,
  EmptyParam, EmptyParam, EmptyParam,
  EmptyParam, EmptyParam, EmptyParam,
  EmptyParam, EmptyParam, EmptyParam,
  EmptyParam, EmptyParam, EmptyParam,
  EmptyParam, EmptyParam);
WordDocument1.ConnectTo(WordApplication1.ActiveDocument);


DataModule2.ADOTable1.First;
a:=0;
j:=2;

while a<DataModule2.ADOTable1.RecordCount do
begin

WordDocument1.Tables.Item(1).Cell(j,1).Range.Text:=DataModule2.ADOTable1DSDesigner2.Value;
WordDocument1.Tables.Item(1).Cell(j,2).Range.Text:=DataModule2.ADOTable1DSDesigner3.Value;
WordDocument1.Tables.Item(1).Cell(j,3).Range.Text:=DataModule2.ADOTable1DSDesigner4.Value;
WordDocument1.Tables.Item(1).Cell(j,4).Range.Text:=DataModule2.ADOTable1_.AsString;

WordDocument1.Tables.Item(1).Cell(j,5).Range.Text:=DataModule2.ADOTable1_2.Value;
WordDocument1.Tables.Item(1).Cell(j,6).Range.Text:=DataModule2.ADOTable1_3.Value;

WordDocument1.Tables.Item(1).Rows.Add(EmptyParam);
a:=a+1;
j:=j+1;
DataModule2.ADOTable1.Next;

end;
end;

Последний раз редактировалось true, 27.11.2010 в 14:36.
Ответить с цитированием
  #2  
Старый 27.11.2010, 14:47
Аватар для v1s2222
v1s2222 v1s2222 вне форума
Продвинутый
 
Регистрация: 07.09.2010
Сообщения: 726
Репутация: 26711
По умолчанию

С помощью функции CreateMessageDialog можно к сообщению добавлять компоненты делфи.
__________________
Помогаю за Спасибо
Ответить с цитированием
  #3  
Старый 27.11.2010, 17:28
true true вне форума
Новичок
 
Регистрация: 03.10.2010
Сообщения: 64
Репутация: 10
По умолчанию

Ну я не просто так код выложил.. то что вы сказали это есть в faq но у меня ошибки..

незнаю я что делать вот добавил

Код:
procedure TForm1.Word1Click(Sender: TObject);

var
filename:OleVariant;
j,a: integer;
 AMsgDialog: TForm;
  ACheckBox: TCheckBox;
  begin
 AMsgDialog := CreateMessageDialog('Это тестовое сообщение.', mtWarning, [mbYes, mbNo]) ;
  ACheckBox := TCheckBox.Create(AMsgDialog) ;
  with AMsgDialog do
  try
   Caption := 'Заголовок' ;
   Height := 150;

   with ACheckBox do
   begin
    Parent := AMsgDialog;
    Caption := 'Не показывать больше...';
    Top := 90;
    Left := 8;
    Width:= 200;
   end;

   if (ShowModal = ID_YES) then
   begin
    if ACheckBox.Checked then
      AMsgDialog.Enabled:=false;
    else



begin


if OpenDialog1.Execute
then
filename:=OpenDialog1.FileName;



WordApplication1.Connect;

WordApplication1.Documents.Open(FileName,
  EmptyParam, EmptyParam, EmptyParam,
  EmptyParam, EmptyParam, EmptyParam,
  EmptyParam, EmptyParam, EmptyParam,
  EmptyParam, EmptyParam, EmptyParam,
  EmptyParam, EmptyParam);
WordDocument1.ConnectTo(WordApplication1.ActiveDocument);


DataModule2.ADOTable1.First;
a:=0;
j:=2;

while a<DataModule2.ADOTable1.RecordCount do
begin

WordDocument1.Tables.Item(1).Cell(j,1).Range.Text:=DataModule2.ADOTable1DSDesigner2.Value;
WordDocument1.Tables.Item(1).Cell(j,2).Range.Text:=DataModule2.ADOTable1DSDesigner3.Value;
WordDocument1.Tables.Item(1).Cell(j,3).Range.Text:=DataModule2.ADOTable1DSDesigner4.Value;
WordDocument1.Tables.Item(1).Cell(j,4).Range.Text:=DataModule2.ADOTable1_.AsString;

WordDocument1.Tables.Item(1).Cell(j,5).Range.Text:=DataModule2.ADOTable1_2.Value;
WordDocument1.Tables.Item(1).Cell(j,6).Range.Text:=DataModule2.ADOTable1_3.Value;

WordDocument1.Tables.Item(1).Rows.Add(EmptyParam);
a:=a+1;
j:=j+1;
DataModule2.ADOTable1.Next;
end;

filename:=OpenDialog1.FileName+DateToStr(Date)+'.doc';
WordDocument1.SaveAs(filename);
WordDocument1.Close;
WordApplication1.Disconnect;
ShowMessage('Операция заершена успешно!');
end;


Цитата:
if ACheckBox.Checked then
AMsgDialog.Enabled:=false;
else



что прописать если будет не отмечено, как сделать чтобы печать потом началась, после выбора файла?

Последний раз редактировалось true, 28.11.2010 в 09:58.
Ответить с цитированием
  #4  
Старый 28.11.2010, 13:46
true true вне форума
Новичок
 
Регистрация: 03.10.2010
Сообщения: 64
Репутация: 10
По умолчанию

еще вопрос как запустить консольное приложение нажав на кнопку button?
у меня Project1 - простое приложение Project2 - консолльное, может их както связать можно?
Ответить с цитированием
  #5  
Старый 28.11.2010, 13:59
Аватар для v1s2222
v1s2222 v1s2222 вне форума
Продвинутый
 
Регистрация: 07.09.2010
Сообщения: 726
Репутация: 26711
По умолчанию

Если консольное приложение уже создано, то запускай его так:
Код:
Или
WinExec('имя консольного приложениея', 0);
Или
ShellExecute(Handle, 'open', 'имя приложения', ...);
__________________
Помогаю за Спасибо
Ответить с цитированием
  #6  
Старый 28.11.2010, 16:46
true true вне форума
Новичок
 
Регистрация: 03.10.2010
Сообщения: 64
Репутация: 10
По умолчанию

Пасибос дружище просто я кодкогда от консольного вставлял он работал но при нажа тии проект вис ужасно)
Ответить с цитированием
  #7  
Старый 29.11.2010, 09:27
true true вне форума
Новичок
 
Регистрация: 03.10.2010
Сообщения: 64
Репутация: 10
По умолчанию

filename:=OpenDialog1.FileName+DateToStr(Date)+'.doc';

Можно ли както стереть расширение у opendialog1.filename?
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 13:35.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025