И снова печать!!!

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Max!
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 502
Зарегистрирован: 03.04.2003 (Чт) 22:08
Откуда: Литва

И снова печать!!!

Сообщение Max! » 30.04.2003 (Ср) 16:48

Как из события Click сделать чтобы прога распечатала текст из трёх ТexBox'сов ! Правда я уже задавал похожий вопрос раньше но у меня нечего не выходит! Помогите заранее благодарен! :wink:
Max!

Max!
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 502
Зарегистрирован: 03.04.2003 (Чт) 22:08
Откуда: Литва

Сообщение Max! » 01.05.2003 (Чт) 23:26

Люди help me это срочно!! :!: :!: :x :!:
Max!

xfolder
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 133
Зарегистрирован: 22.07.2002 (Пн) 18:57
Откуда: United Kingdom

Сообщение xfolder » 02.05.2003 (Пт) 3:49

chto tut slojnogo posilaesh na pechat soderjimoe etih textboxov i vse, delov to

areh
Постоялец
Постоялец
 
Сообщения: 530
Зарегистрирован: 02.12.2002 (Пн) 12:28
Откуда: РОССИЯ, Салехард

Сообщение areh » 02.05.2003 (Пт) 5:25

Если тебе при печати не надо всяких разных навотортов (типа печати на нестандартном для принтера формате, печати по диоганали и т.д.), то можешь спокойно использовать объект Printer

' TEXT - То что надо распечатать
Printer.Print (TEXT)

Так же можешь перемещать по странице точку вывода:

Printer.CurrentX = 500
Printer.CurrentY = 500

Только не забудь установить единицы измерения (я сейчас не помню как они называються, а ВБ6 у меня под рукой нету)

И в конце надо вызвать метод:

Printer.EndDoc()

Ну вроде бы примерно так

Ах да, он напечатает на принтере по умолчанию, если ты этого не хочешь смотри коллекцию Printers

И ещё, когда будешь работать с Printer.Print у тебя возможно начнуться запарки, во-первых, метода Print может быть не видно, а во-вторых, может не работать один из вариантов:

1:
Printer.Print ("TEXT 1")

2:
With Printer
.Print("Text 2")
End With

Удачи

Max!
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 502
Зарегистрирован: 03.04.2003 (Чт) 22:08
Откуда: Литва

Сообщение Max! » 02.05.2003 (Пт) 15:38

Нет не надо мне примочек всяких мне просто надо что бы прога распечатала текст при нажатий на кнопку из 3ёх текстбоксов вот и всё!

И у меня не работают ети два способа! :x :x :x :x :x :x
1:
Printer.Print ("TEXT 1")

2:
With Printer
.Print("Text 2")
End With
Max!

areh
Постоялец
Постоялец
 
Сообщения: 530
Зарегистрирован: 02.12.2002 (Пн) 12:28
Откуда: РОССИЯ, Салехард

Сообщение areh » 02.05.2003 (Пт) 15:39

А что он тебе говорит?

4udik
Начинающий
Начинающий
 
Сообщения: 12
Зарегистрирован: 25.01.2003 (Сб) 11:35
Откуда: Latvia

Сообщение 4udik » 02.05.2003 (Пт) 23:48

1. printer.print text1.text
printer.print text2.text
printer.print text3.text
printer.enddoc

2. Open "LPT 1" For Output As #1
Print #1,text1.text
..........
Close #1

Max!
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 502
Зарегистрирован: 03.04.2003 (Чт) 22:08
Откуда: Литва

Сообщение Max! » 04.05.2003 (Вс) 16:47

Он выдаёт такую ашибку
"Variable required" или "Can't assign to this expression" !!!

Может надо подключить какие библеотеки! :?: :!: :x
Max!

Yurich
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 675
Зарегистрирован: 05.03.2003 (Ср) 3:43
Откуда: DONBASS/Gorlovka

Сообщение Yurich » 04.05.2003 (Вс) 21:13

Я вообще не нашел в объекте Printer функцию .Print ?!!

Max!
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 502
Зарегистрирован: 03.04.2003 (Чт) 22:08
Откуда: Литва

Сообщение Max! » 04.05.2003 (Вс) 21:27

Так как тогда быть ? Есть ещё идей ?!
Max!

Max!
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 502
Зарегистрирован: 03.04.2003 (Чт) 22:08
Откуда: Литва

Сообщение Max! » 05.05.2003 (Пн) 18:43

Люди help please! :!:
Max!

Max!
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 502
Зарегистрирован: 03.04.2003 (Чт) 22:08
Откуда: Литва

Сообщение Max! » 05.05.2003 (Пн) 22:35

Вот код каторый мне давали раньше но он не работает где здесь ошибка :

Код: Выделить всё
v formu:
Public Declare Function DrawText Lib "user32" Alias "DrawTextA" (ByVal hdc As Long, ByVal lpStr As String, ByVal nCount As Long, lpRect As RECT, ByVal wFormat As Long) As Long
Public Type RECT
Left As Long
Top As Long
Right As Long
Bottom As Long
End Type
(ili private declare )

V knopku:
sub myprint()
on error goto errhdl
dim rc as rect
set prn = printers (1)
with rc
left = 10
top = 10
right = 400
bottom = 400
end with
drawtext prn.hdc, text1.text & chr(0), len(text1.text)+1, rc, DT_LEFT or DT_TOP
prn.enddoc
exit sub
errhdl:
msgbox "An error occured while printing to " & prn.devicename & ": " & err.description
end sub



Люди прошу вас ПоМоГиТе!!!Please!!! :cry: :cry: :cry: :x
Max!

ShadowCaster
Бывалый
Бывалый
 
Сообщения: 254
Зарегистрирован: 24.05.2002 (Пт) 10:52

Сообщение ShadowCaster » 05.05.2003 (Пн) 23:28

:shock: ...
Sub PrintAll()
Printer.Print Text1.Text
Printer.Print Text2.Text
Printer.Print Text3.Text
Printer.EndDoc
End Sub

У тебя должны быть 3 TextBox'а на форме с именами "Text1", "Text2", "Text3"

Max!
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 502
Зарегистрирован: 03.04.2003 (Чт) 22:08
Откуда: Литва

Сообщение Max! » 06.05.2003 (Вт) 8:02

Что то не работает ! Я пишу этот код в событие Click может надо вдругое событие! Может надо подключить какие библиотеки или компоненты через project\Reference project\Components ? :?: :?:
Max!

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 06.05.2003 (Вт) 8:22

Max! писал(а):Я пишу этот код в событие Click может надо вдругое событие!

мама... роди меня обратно...
Lasciate ogni speranza, voi ch'entrate.

Max!
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 502
Зарегистрирован: 03.04.2003 (Чт) 22:08
Откуда: Литва

Сообщение Max! » 06.05.2003 (Вт) 16:20

Люди, шутки в сторону! Пожалуйста помогите, это срочно! И если можно, кодом и поподробнее.
Max!

Yurich
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 675
Зарегистрирован: 05.03.2003 (Ср) 3:43
Откуда: DONBASS/Gorlovka

Сообщение Yurich » 06.05.2003 (Вт) 19:19

Вот этот код у меня кое-как, но работает

Sub myprint()
Dim t As String
Set Printer = Printers(0)
'Debug.Print Printer.DeviceName
t = Text1.Text
Printer.NewPage
TextOut Printer.hDC, 0, 0, t, Len(t) 'gdi32.dll
Printer.EndDoc
End Sub

Max!
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 502
Зарегистрирован: 03.04.2003 (Чт) 22:08
Откуда: Литва

Сообщение Max! » 06.05.2003 (Вт) 22:50

Yurich , А можно Этот код

Sub myprint()
Dim t As String
Set Printer = Printers(0)
'Debug.Print Printer.DeviceName
t = Text1.Text
Printer.NewPage
TextOut Printer.hDC, 0, 0, t, Len(t) 'gdi32.dll
Printer.EndDoc
End Sub

Вставить в событие Click? :!: :?
Max!

Yurich
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 675
Зарегистрирован: 05.03.2003 (Ср) 3:43
Откуда: DONBASS/Gorlovka

Сообщение Yurich » 07.05.2003 (Ср) 0:04

Само собой разумеется:

Private Sub Command1_Click()
myprint
End Sub

кстати, строчка
Printer.NewPage
переводит страницу и подготавливает принтер к приему данных, а
Printer.EndDoc - заставляет напечатать страницу

Max!
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 502
Зарегистрирован: 03.04.2003 (Чт) 22:08
Откуда: Литва

Сообщение Max! » 07.05.2003 (Ср) 0:14

А остальнои код куда в (General) или в модуль?
Max!

Yurich
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 675
Зарегистрирован: 05.03.2003 (Ср) 3:43
Откуда: DONBASS/Gorlovka

Сообщение Yurich » 07.05.2003 (Ср) 2:15

Макс! Остальной код можно всовывать по желанию:
просто в форму, в модуль, класс и т.д.
Если будут еще вопросы, лучше пиши мне на мыло - траффик дорого обходится!
aula@ghost.dn.ua


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex-бот и гости: 66

    TopList