TECHNOLOGIES
FORUMS
JOBS
BOOKS
EVENTS
INTERVIEWS
Live
MORE
LEARN
Training
CAREER
MEMBERS
VIDEOS
NEWS
BLOGS
Sign Up
Login
No unread comment.
View All Comments
No unread message.
View All Messages
No unread notification.
View All Notifications
Answers
Post
An Article
A Blog
A News
A Video
An EBook
An Interview Question
Ask Question
Forums
Monthly Leaders
Forum guidelines
John Kindred
NA
2
0
Problem using GDI+ to add drawings & text from SQL tables
Oct 10 2006 8:17 PM
Hi,
I'm really new to graphics and I've struggled with this problem for weeks, and desperately need help.
I'm attempting to write a routine where I can place from one to six rectangles on a page, add drawings, dimensions etc into each rectangle, and print out the result.
The co-ordinates for the data in the rectangles are contained in a number of SQL tables.
One critical aspect to be considered is that the contents to be placed in a rectangle, must be able to be placed in any one of the six rectangles. With one set of data, this is not dificult, using TransformTranslate, however, as soon as I try to add a second rectagle and data, I keep getting a "Parameter is not valid" message. This message applies to ether the rectangle, or Transformation co-ordinates, or anything which has co-ordinates, whichever is first up in the code.
I've experimented with GraphicPaths, Regions, Containers and have not had any success. I am guessing the problem may be related to the Origin of the co-ordinates, but can't find any way to reset x=0 y = 0. If that is possible. And I really don't know if that could solve the problem.
My guess seems to be incorrect. I believe the following lines will reset the Origin to 0,0. and tried it without success.
e.ResetTransform()
e.TranslateTransform(0, 0)
I've posted a little of my code below. For a number of reasons, the Select Case works from the highest number, back to 1.
If I dont try to add data to the rectangles, all the rectangles perform as I want, showing up on the screen and printing OK. Add data, and it handles one lot correctly, then hits me with the error message.
Code:
Dim blackPen As New Pen(Color.Black, 2)
_dwgNo = _totalDrawings
Select Case _totalDrawings
Case Is = 1
' Draw rectangle in correct position
e.DrawRectangle(blackPen, 25, 140, 340, 275)
' Use TranslateTransform to place drawings etc in correct rectangle
Dim z1 As Single = 10 '_across
Dim d1 As Single = 100 '_down
e.TranslateTransform(z1, d1)
' Select drawing and dimensions co-ordinates, and text from tables and add to rectangle
If _dwgNo = 1 Then
DrawDetails(e)
End If
Case Is = 2
e.DrawRectangle(blackPen, 380, 140, 340, 275)
Dim z2 As Single = 355 '_across
Dim d2 As Single = 100 '_down
e.TranslateTransform(z2, d2)
' Select drawing and dimensions co-ordinates, and text from tables and add to rectangle
If _dwgNo = 2 Then
DrawDetails(e)
End If
Case Is = 3
e.DrawRectangle(blackPen, 735, 140, 340, 275)
Dim z3 As Single = 710 '_across
Dim d3 As Single = 100 '_down
e.TranslateTransform(z3, d3)
If _dwgNo = 3 Then
DrawDetails(e)
End If
Hope someone can help me, to preserve what sanity I still have. Any ideas or advice will be most welcome.
Tailor
Reply
Answers (
0
)
Controls disappear after tabbing through
GDI+ - Pen and patterns