954,152 Members — Technology Publication meets Social Media
Username:
Password:
Lost login information?
Have something to say? Contribute New Article Reply to this Article

Visual Basic Problem??

I have written a program that reads a text file and then saves it as an image file.Although the program is reading the file but its having errors saving it as an image file. Please Help!
Option Explicit

Private Const SRCCOPY = &HCC0020
Private Const MERGEPAINT = &HBB0226
Private Const SRCAND = &H8800C6
Private Const DIB_RGB_COLORS = 0
Private Const DIB_PAL_COLORS = 1

Private Declare Function BitBlt Lib "gdi32" _
(ByVal hDestDC As Long, ByVal X As Long, ByVal Y As Long, _
ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, _
ByVal xSrc As Long, ByVal ySrc As Long, ByVal dwRop As Long) As Long

Dim nRet As Long
Private Sub Command1_Click()
'Outline:- Asks the user for a file.
'- Reads all the data into Text1.

Dim FilePath As String
Dim Data As String

FilePath = InputBox("Enter the path for a text file", "The Two R's", _
"D:\address.txt")
'Asks the user for some input via an inp
' ut box.

Open FilePath For Input As #1
'Opens the file given by the user.

Do Until EOF(1)
'Does this loop until ' f>End Of File(' >EOF) for file number 1.
Line Input #1, Data
'Read one line and puts it into the vari
' ble Data.
Text1.Text = Text1.Text & vbCrLf & Data
'Adds the read line into Text1.
MsgBox EOF(1)
Loop

Close #1
'Closes this file.
End Sub

Private Sub Command2_Click()

pic.Visible = True
pic.Height = Text1.Height
pic.Width = Text1.Width

nRet = BitBlt(pic.hDC, 0, 0, Text1.Width - 2, Text1.Height - 2, Me.hDC, Text1.Left + 1, Text1.Top + 1, SRCCOPY)
pic.Picture = pic.Image
SavePicture pic.Image, "text.bmp"
pic.Visible = False
Text1.SetFocus

End Sub

ChroNoS
Light Poster
30 posts since Aug 2008
Reputation Points: 13
Solved Threads: 0
 

HI,

Kindly Furnish the error Details...

-venkat

venkatramasamy
Junior Poster in Training
71 posts since Aug 2007
Reputation Points: 12
Solved Threads: 12
 

HI,

Kindly Furnish the error Details...

-venkat

There are no errors. Its just that I want to capture the details in the textbox and it is capturing the portion of the screen somewhere out of it.

ChroNoS
Light Poster
30 posts since Aug 2008
Reputation Points: 13
Solved Threads: 0
 

Hi, Instead of using BitBlt() function,you can directly print inside the picture box (using pic.print method) when you reading from the file. Also set AutoRedraw property to true.

selvaganapathy
Posting Pro
547 posts since Feb 2008
Reputation Points: 44
Solved Threads: 100
 
Hi, Instead of using BitBlt() function,you can directly print inside the picture box (using pic.print method) when you reading from the file. Also set AutoRedraw property to true.

Okay, Can you tell me how am I supposed to do that? :?:

ChroNoS
Light Poster
30 posts since Aug 2008
Reputation Points: 13
Solved Threads: 0
 

Ok, I give an example.

In a form
> Draw a Picture box (Picture1)
> Draw a Command Button (Command1)

Private Sub Command1_Click()
   Picture1.AutoRedraw = True
   
   Picture1.Print "Welcome"
   Picture1.Print "To"
   Picture1.Print "VB6"
   
   SavePicture Picture1.Image,"C:\Test.jpg"
End Sub
selvaganapathy
Posting Pro
547 posts since Feb 2008
Reputation Points: 44
Solved Threads: 100
 

Ok, I give an example.

In a form > Draw a Picture box (Picture1) > Draw a Command Button (Command1)

Private Sub Command1_Click()
   Picture1.AutoRedraw = True
   
   Picture1.Print "Welcome"
   Picture1.Print "To"
   Picture1.Print "VB6"
   
   SavePicture Picture1.Image,"C:\Test.jpg"
End Sub

Thanx!!!!!!!! That just solved my problem. But there is one last thing :)
I want to put a lot of text in the textbox which is supposed to be captured. But the textbox does not resize to the text, Although it can show scrollbars. I want it to grow as big to fit the whole text on the screen no matter how big the text is.
Is there any way it can resize itself automatically to fit the whole text?

ChroNoS
Light Poster
30 posts since Aug 2008
Reputation Points: 13
Solved Threads: 0
 

Do you mean ? When you give large amount of text, Its font size should be adjusted to fit into it?

selvaganapathy
Posting Pro
547 posts since Feb 2008
Reputation Points: 44
Solved Threads: 100
 
Do you mean ? When you give large amount of text, Its font size should be adjusted to fit into it?

Yeah, that should do
And also if i give small text the picture box should adjust its size according to the text so to fit it.

ChroNoS
Light Poster
30 posts since Aug 2008
Reputation Points: 13
Solved Threads: 0
 

May be Picture1.TextHeight() and Picture1.TextWidth() help you to predict the font size

selvaganapathy
Posting Pro
547 posts since Feb 2008
Reputation Points: 44
Solved Threads: 100
 

Problem Solved! Thanx for Helping

ChroNoS
Light Poster
30 posts since Aug 2008
Reputation Points: 13
Solved Threads: 0
 

Now, I just discovered a problem in this thing.
The PictureBox is not printing the whole block of text, but only the first line of it.
And I dont want to increase its width anymore.
What should I do then?

ChroNoS
Light Poster
30 posts since Aug 2008
Reputation Points: 13
Solved Threads: 0
 
May be Picture1.TextHeight() and Picture1.TextWidth() help you to predict the font size

One last problem. I swear its the last one now!
Well, there is a block of text on the textbox but only the first line is being printed on the picturebox, and I dont want to increae the width of that box.
what should i do then to solve this?

ChroNoS
Light Poster
30 posts since Aug 2008
Reputation Points: 13
Solved Threads: 0
 

This article has been dead for over three months

Post: Markdown Syntax: Formatting Help
You