Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Другие темы раздела
VB Интересная информация. MS Form 2.0 https://www.cyberforum.ru/ visual-basic/ thread481287.html
Не буду вдоваться в подробности, но вот что накопал мой коллега на сервере Microsoft: http://support.microsoft.com/default.aspx?scid=kb;EN-US;241245 -------------------------------------------------------------- PRB: 'Error 7 - Out of Memory' Error Message From Visual Basic Application Using FM20.DLL Anwendbar auf This article was previously published under Q241245 SYMPTOMS
Как передать функции из DAO в ADO? VB
У меня есть 2 фкц упаковки dbf под DAO. Кто-нибудь может подсказать, как их переделать под ADO? Или м.б. кто-нибудь знает, как упаковывать dbf в ADO. Public Function Pack_DBF(db As Database, tblname As String) As Long Dim dbdir As String, tmp As String 'Temp variables Dim i As Integer ReDim idxs(0) As New Index On Error GoTo PackErr dbdir = db.NAME & ' ' 'Hold database directory
VB Как сделать MDI-форму always on top среди дочерних форм? https://www.cyberforum.ru/ visual-basic/ thread481279.html
Плиз, если кто знает, подскажите!!!! Уже третий день бьюсь над этой проблемой(а может и не проблемой, но я это пока не знаю :)). Для простого окна все просто, SetWindowPos, а для дочерней формы это не катит:(. Заранее благодарен.
VB Исходник сенсора CPU https://www.cyberforum.ru/ visual-basic/ thread481273.html
Ребята, привет! Нет ли у кого исходника, нужно забацать сенсор загрузки CPU?
VB открытие текстового файла при помощи Notepad
Все перепробовал но ни как мне не удается открыть конкретный текстовый файл при помощи Notepad. Не подскажете? Заранее благодарен.
VB За какую функцию отвечают user32.dll,kernel32,winmm.dll https://www.cyberforum.ru/ visual-basic/ thread481261.html
Помогите мне пожалуйста,разобратся с этими DLLками. Если есть где можно скачать матерьял,буду премного благодарен.
VB Можно ли отправить письмо из VB кодом? Возможно ли отправить письмо ТОЛЬКО кодом, без использования внешних программ? https://www.cyberforum.ru/ visual-basic/ thread481260.html VB Как сделать в VB6 URLссылку на сайт??
Как сделать в VB6 URLссылку на сайт?? В любых примерах хоть с лейбла кто знает пишите всё.. 8о)
VB Crystal Reports Заглючила p2smon.dll Всем привет! Ребята выручайте!!!!!!! Я уже задолбался, сил нет :)))) Заглючила p2smon.dll. Вообще-то я её утерял. Пробовал пару других, но они блин работают кривовато. Рылся в инете - узнал, что есть глюк у некоторых версий этой dll. Если не влом пошвырните в меня оной по E-mail. Вам швырнуть ее - 5 сек, а мне нервов зберегёте. https://www.cyberforum.ru/ visual-basic/ thread481246.html VB Как отображать html-файл, хранящийся в оперативке? Во-первых всем привет. Давно не заходил так как поступил в Лицей :) Во-вторых есть два вопроса: 1)Как отображать ХТМЛ файл, хранящийся в оперативке (не с инета и не с винта) ? 2) Как сделать чтобы при двойном щелчке на файл ХТМЛ открывался мой браузер и отображал страницу ? Заранее спасибо.... Допиваю пиво..... Иду в Лицей :( https://www.cyberforum.ru/ visual-basic/ thread481242.html
VB Можно ли скомпилировать программу вместе с ocx-компонентом в одном exe-файле?
Подскажите, пожалуйста, можно ли скомпилировать программу вместе с ocx-компонентом в одном exe-файле? Если нельзя, то можно ли вставить исходники этого ocx-компонента в исходник программы и где их взять (в частности, winsock.ocx)? Заранее спасибо.
VB Нужно связать DataGrid с Data Дело вот в чем. Делаю маленькую прогу на VB6 с использованием базы данных, пользуюсь при етом книгой с примерами. Есть форма с обектом Data (данные) попримеру в книге хочу ипользовать Datagrid размещаю его на форме. пытаюсь заканектить с data ( так написано в книге) и он ругаеться, мол канектиться буду тока с Adodc и еще там с чемто. А в книге на кортинках все прекрасно работает:)))) ( я так... https://www.cyberforum.ru/ visual-basic/ thread481222.html
0 / 0 / 0
Регистрация: 21.10.2006
Сообщений: 7
03.01.2010, 23:35 0

Проблема с RichTextBox под Windows 2000 или Windows XP - VB - Ответ 2641557

03.01.2010, 23:35. Показов 1465. Ответов 2
Метки (Все метки)

Ответ

'Честно сознаюсь - основная идея не моя - нарыл где-то в Internet, а вот аранжировка - моя...

Option Explicit

'Примечание: Microsoft RichTextBox обеспечивает печать самого себя
'с помощью метода .SelPrint.
'К сожалению, данный метод не позволяет никоим образом вмешаться
'в процесс, например для печати на загловков страницы или установки
'отступов от края листа. Данный пример решает эту проблему,
'т.к. теперь Вы имеете полный контроль над процессом печати.

Private Const mFontName As String = 'Courier New Cyr'
Private Const cTvip As Single = 56.7 'Твипов на мм
Private bStopRtfPrint As Boolean 'Тормозим печать
Private bError As Boolean 'Ошибка печати

Public Type SIZE
cx As Long
cy As Long
End Type

Public Type RECT
left As Long
top As Long
right As Long
bottom As Long
End Type

Public Type CharRange
cpMin As Long ' First character of range (0 for start of doc)
cpMax As Long ' Last character of range (-1 for end of doc)
End Type

Public Type FormatRange
hDC As Long ' Actual DC to draw on
hdcTarget As Long ' Target DC for determining text formatting
rc As RECT ' Region of the DC to draw to (in twips)
rcPage As RECT ' Region of the entire DC (page size) (in twips)
chrg As CharRange ' Range of text to draw (see above declaration)
End Type

Public Const LOGPIXELSX = 88
Public Const LOGPIXELSY = 90
Public Const PHYSICALOFFSETX As Long = 112
Public Const PHYSICALOFFSETY As Long = 113

Public Const WM_USER As Long = &H400
Public Const EM_FORMATRANGE As Long = WM_USER + 57

'' DrawText() Format Flags
Public Const DT_TOP = &H0
Public Const DT_LEFT = &H0
Public Const DT_CENTER = &H1
Public Const DT_RIGHT = &H2
Public Const DT_VCENTER = &H4
Public Const DT_BOTTOM = &H8
Public Const DT_WORDBREAK = &H10
Public Const DT_SINGLELINE = &H20
Public Const DT_EXPANDTABS = &H40
Public Const DT_TABSTOP = &H80
Public Const DT_NOCLIP = &H100
Public Const DT_EXTERNALLEADING = &H200
Public Const DT_CALCRECT = &H400
Public Const DT_NOPREFIX = &H800
Public Const DT_INTERNAL = &H1000
'------------

'Declare Sub InflateRect Lib 'user' (lpRect As RECT, ByVal X%, ByVal Y%)
Declare Sub InflateRect Lib 'user32' (lpRect As RECT, ByVal X%, ByVal Y%)
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)
Declare Function GetDeviceCaps Lib 'gdi32' (ByVal hDC As Long, ByVal nIndex As Long) As Long
Declare Function SendMessage Lib 'user32' Alias 'SendMessageA' (ByVal hwnd As Long, ByVal msg As Long, ByVal wp As Long, lp As Any) As Long

'--------- Печать текста RTF -------------
Public Sub PrintRTF(RTF As RichTextBox, Optional ByVal LeftMarginWidth As Long = 20, Optional ByVal TopMarginHeight As Long = 10, Optional ByVal RightMarginWidth As Long = 10, Optional ByVal BottomMarginHeight As Long = 10, Optional ByVal bPagesAll As Boolean = True, Optional ByVal lPagesNum As Long = 1)
Dim LeftOffset As Long, TopOffset As Long
Dim LeftMargin As Long, TopMargin As Long
Dim RightMargin As Long, BottomMargin As Long
Dim fr As FormatRange
Dim rcDrawTo As RECT, rcPage As RECT
Dim TextLength As Long, NextCharPos As Long
Dim lPagesCounter As Long 'Число напечатанных страниц
lPagesCounter = 0

MmToTwip LeftMarginWidth, TopMarginHeight, RightMarginWidth, BottomMarginHeight 'переводим из мм ttomMargin As Long
Dim fr As FormatRange
Dim rcDrawTo As RECT
Dim rcPage As RECT
Dim NextCharPos As Long

'переводим из мм в Твипы ----------
MmToTwip LeftMarginWidth, TopMarginHeight, RightMarginWidth, BottomMarginHeight
'--------------------------------------
bStopRtfPrint = False


oOut.ScaleMode = vbTwips
NextCharPos = 0

' Get the offsett to the printable area on the page in twips
LeftOffset = GetDeviceCaps(oOut.hDC, PHYSICALOFFSETX) / GetDeviceCaps(oOut.hDC, LOGPIXELSX) * 1440
TopOffset = GetDeviceCaps(oOut.hDC, PHYSICALOFFSETY) / GetDeviceCaps(oOut.hDC, LOGPIXELSY) * 1440


' Calculate the Left, Top, Right, and Bottom margins
LeftMargin = LeftMarginWidth - LeftOffset
TopMargin = TopMarginHeight - TopOffset
RightMargin = (oOut.Width - RightMarginWidth) - LeftOffset
BottomMargin = (oOut.Height - BottomMarginHeight) - TopOffset

rcPage.left = 0
rcPage.top = 0
rcPage.right = oOut.ScaleWidth
rcPage.bottom = oOut.ScaleHeight

' Set rect in which to print (relative to printable area)
rcDrawTo.left = LeftMargin
rcDrawTo.top = TopMargin
rcDrawTo.right = RightMargin
rcDrawTo.bottom = BottomMargin

' Set up the print instructions
fr.hDC = oOut.hDC ' Use the same DC for measuring and rendering
fr.hdcTarget = oOut.hDC ' Point at oOut hDC
'fr.chrg.cpMin = NextCharPos ' Indicate start of text through
fr.chrg.cpMin = 0 ' Indicate start of text through
fr.chrg.cpMax = -1 ' end of the text
fr.rc = rcDrawTo ' Indicate the area on page to draw to
fr.rcPage = rcPage ' Indicate entire size of page

'oOut.FontSize = 6
oOut.Print Space(1); ' Re-initialize hDC

'NextCharPos = SendMessage(RTF.hwnd, EM_FORMATRANGE, True, fr) ' Print the page by sending EM_FORMATRANGE message
SendMessage RTF.hwnd, EM_FORMATRANGE, True, fr ' Print the page by sending EM_FORMATRANGE message
'Debug.Print 'OUT EM_FORMATRANGE'; EM_FORMATRANGE
DoEvents
SendMessage RTF.hwnd, EM_FORMATRANGE, False, ByVal CLng(0) 'Похоже восстанавливает исходный RTF
Exit Sub
OutRTFSingleBad:
bError = True
End Sub

'----------- Нет ошибок принтера -----------
Public Sub PrintErrorNo()
bError = False
End Sub

Public Function PrintError() As Boolean
PrintError = bError
End Function

'------ Печать одной страницы без перевода листа -----------
Public Sub PrintRTFSingle(RTF As RichTextBox, Optional ByVal LeftMarginWidth As Long = 20, Optional ByVal TopMarginHeight As Long = 10, Optional ByVal RightMarginWidth As Long = 10, Optional ByVal BottomMarginHeight As Long = 10)
On Error GoTo PrintRTFSingleBad:
Dim LeftOffset As Long
Dim TopOffset As Long
Dim LeftMargin As Long
Dim TopMargin As Long
Dim RightMargin As Long
Dim BottomMargin As Long
Dim fr As FormatRange
Dim rcDrawTo As RECT
Dim rcPage As RECT
'Dim TextLength As Long
Dim NextCharPos As Long
'Dim lPagesCounter As Long 'Число напечатанных страниц
'lPagesCounter = 0

'переводим из мм в Твипы ----------
LeftMarginWidth = LeftMarginWidth * cTvip
TopMarginHeight = TopMarginHeight * cTvip
RightMarginWidth = RightMarginWidth * cTvip
BottomMarginHeight = BottomMarginHeight * cTvip
'MmToTwip LeftMarginWidth, TopMarginHeight, RightMarginWidth, BottomMarginHeight
'--------------------------------------

bStopRtfPrint = False

NextCharPos = 0
Printer.ScaleMode = vbTwips
<BR

Вернуться к обсуждению:
Проблема с RichTextBox под Windows 2000 или Windows XP VB
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.01.2010, 23:35
Готовые ответы и решения:

Хочу сделать программу невидимой для Windows XP или Windows 2000 или Windows NT
Ya hochu sdelat` programu nevidimuyu na Windows XP ili Windows 2000 ili Windows NT Nashel funkciu...

Windows 2000 Prof: не работает прога под Windows 95/98
Подскажите, плз, как это дело побороть (а может сразу - в морг?)... Ругается на msvcrt.dll. Заменял...

Как установить Windows 2000 Или Windows nt Через флешку
Как установить Windows 2000 Или Windows nt Через флешку!У меня нетбук и нет дисковода!

Проблемма с установкой Perl под Веб сервер для IIS под Windows 2000 Professional
Помогите с установкой Perl под Веб сервер для IIS под Windows 2000 Professional Мои действия...

2
03.01.2010, 23:35
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.01.2010, 23:35
Помогаю со студенческими работами здесь

Как запустить asp-страницы, разработанные под PWS и Win98, под Windows 2000 Server?
Как запустить asp-страницы, разработанные под PWS и Win98, под Windows 2000 Server! Есть там...

Проблема после установки Windows 2000 !!!
Может мне помочь в следующей проблеме: Обновил на своем PC OS (Windows98 на Windows2000),...

Сеть под Windows 2000
привет всем... вот такой вопрос. на машине имеется 2 сетевых интерфейса... на одном из них...

Эмуляция стиля Windows XP или Windows 7 под восьмеркой
Добрый день! Подскажите, пожалуйста, есть ли под Window 8 способ сэмулировать интерфейсы...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru