Текущий архив: 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.45 MB
Время: 0.012 c