Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.04.30;
Скачать: CL | DM;

Вниз

Срочно!!!   Найти похожие ветки 

 
lionmen ©   (2006-04-11 10:15) [0]

Здравствуйте! Как взять имя при выборе активного принтера с диалога? Допустим, я имею 2 принтера, один мой, другой сетевой. Активный мой, если запускать, то печатает мой, если выбрать сетевой, то печатает сетевой. Это всем ясно. Но, дело в том, что моя прога работает с WORDом. Если я запускаю на печать, печатает мой принтер, т к активный, а если я выбрал сетевой,  печатает все равно мой, т к в вордоском диалоге имя принтера мой, т е активный. Есть вордовская свойство ActivePrinter, хотел бы присвоить то какой я выбрал принтер, т е с обычного принтдиалога делфи имя принтера, который я выбрал передать в ворд свойство ActivePrinter. Потом командой PrintOut сразу на печать. Ну другими словами, просто взять имя, который я выбрал. Дальше я сам справлюсь Кому не лень, опишите плиз.

Вот малюсенькая прога
unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls, QPrinters;

type
 TForm1 = class(TForm)
   Button1: TButton;
   ListBox1: TListBox;
   Edit1: TEdit;
   PrintDialog1: TPrintDialog;
   procedure Button1Click(Sender: TObject);
   procedure PrintDialog1Show(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
 PrintDialog1.Execute;
end;

procedure TForm1.PrintDialog1Show(Sender: TObject);
begin
ListBox1.Items.Text:= Printer.Printers.Text;

//После выбора принтера на диалоговом окне, должна выводится тот
//принтер который я выбрал.
//А это только первый по списку
Edit1.Text:= printer.Printers.Strings[0]; //?????
end;

end.


 
ЮЮ ©   (2006-04-11 10:38) [1]

//После выбора принтера на диалоговом окне, должна выводится тот
//принтер который я выбрал.
  Edit1.Text:=  ListBox1.Items[ListBox1.ItemIndex];

если не выбрал, то ListBox1.ItemIndex = -1

З.Ы.
 procedure TForm1.PrintDialog1Show(Sender: TObject);
 begin
  ListBox1.Items.Text:= Printer.Printers.Text;
 ...
Выделенный оператор должен выполняться не в PrintDialog1Show, а раньше, чтобв пользователь мог выбрать строку в ListBox1, т.е. определить ListBox1.ItemIndex


 
lionmen ©   (2006-04-12 11:07) [2]

Это я знаю, просто я поставил ListBox1 для примера, чтобы посмотреть какие принтеры есть. Я о другом, хочу чтобы при выборе принтера в принтдиалога, похож на ComboBox, принтер становиться активным и сразу же в Edit1 присвоить то имя принтера, которую я выбрал. А то каждый раз изменять настройки принтера в Пуск-Настройка-Принтеры и Факсы-выбрал притер и при нажатии правой кнопкой мыши  выбираем - использовать по умолчание. Мне не надо на печать, я сам справлюсь, мне только вывести и все!!!


 
lionmen ©   (2006-04-13 10:31) [3]

Ну кто нить может ответить, неужель никто не знает?



Страницы: 1 вся ветка

Текущий архив: 2006.04.30;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.027 c
15-1144390810
Vlad Oshin
2006-04-07 10:20
2006.04.30
Переведите с московского на русский :)


2-1144922308
Сергей И
2006-04-13 13:58
2006.04.30
Кто занет как изменить рисунок при запуске WINdows?


2-1144937250
ViktorZ
2006-04-13 18:07
2006.04.30
Почему не складывает как люди!!!


4-1139436066
AndreyNew
2006-02-09 01:01
2006.04.30
metafile на win API


2-1145011481
diwww
2006-04-14 14:44
2006.04.30
Как оперировать строками DBGrid-а?