Drawing Outside Of Form?
Dec 9, 2011Imports System.Runtime.InteropServices
Imports System.Drawing
Imports System.Drawing.Drawing2D
Imports System.Windows.Forms
[code]....
Imports System.Runtime.InteropServices
Imports System.Drawing
Imports System.Drawing.Drawing2D
Imports System.Windows.Forms
[code]....
I need some code to draw a resizable, draggable rectangular cursor (or selection box) on a picturebox. I found some excellent code (albeit rather old) that does just that, but on a form rather than a picturebox. I have tried converting the code - basically moving things to the picturebox events (Paint, MouseDown, MouseMove etc). It nearly works but leaves a trail behind it when you move or resize the cursor. In other words, the selection rectangle is not being erased before being drawn in the new position.
Is there some fundamental difference between drawing graphics on a form and drawing on a picturebox that would cause this behaviour? Something like, when you invalidate a form and cause a redraw it erases what you did last? If not, then I just need to dig a bit further and work out how the cursor is being erased from the previous position.
Here's the original code that works fine on a form:
Private DragRect As New RectangleF(20, 20, 100, 80)
Private Adornments(7) As RectangleF
Private MouseInRect As Boolean = False
[Code]....
Is it possible to convert an object form System.Drawing.Graphics to System.Drawing.Image?
View 4 RepliesMy graph code works but i'm afraid it may not be efficient. I'm drawing a graph on a form using GDI. Basically, i'm making the entire form one big graph. Is this the best approach to creating a graph:
Private Sub frmGraphPaper_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles Me.Paint
Dim g As Graphics = e.Graphics
[code].....
how to draw in vb.net, and I figured the easiest way is to get my hands dirty and start coding. I figure that the best way to start is by drawing a line on the form. What I'm trying to do is use the graphics.drawline(), but I'm failing. This is what I'm using so far
[Code]...
1)Interestingly, if I try to draw on a Form with formborderstyle = none, no drawing appears.On a form, with borders; no problem
2)If I draw from wihin a paint event, i can draw on both.However, the paint event has its own issues, most irritatingly the fact that it doesn't draw immedately, but only after going all the way back through a whole chain of calls.anyway that I can draw directly on a borderless form?
Drawing with GDI+ on form load?
View 1 RepliesI'm having difficulty drawing a graph using a picturebox and the graphics type. For some reason my graph doesn't load, even if I put thec code at the end of the on load event. But it works fine of I assign it to a button.
View 2 Repliesi have the blow code that draws forms border with custom color and title.
'A form with custom border and title bar.
'Some functions, such as resize the window via mouse, are not implemented yet.
Public Class CustomBorderColorForm
[Code]....
I want to draw three straight lines on a form. if the following code is correct:
Private Sub Form1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles Me.Paint
Dim Line1 As System.Drawing.Graphics
[CODE]........
Can I use only one variable (Line1) to draw three straight lines?
draw individual pixels, without resorting to drawing a line and setting it's length to 1. Is there an actual ability to draw a pixel that is just 1 pixel big?
View 2 Replies[URL] In my Windows Form, I wanted the user to give an option to draw all over the form. But, if the user while drawing, enters the region 1, I want to assign a value to variable, say a=1. Correspondingly, if the user without leaving the mouse button previously enter the region 4, I want to b=1.After the user leaves the mouse button, I wanted to compare a and b. If both of them are equal, then Result=Done else not.
View 3 RepliesI have a question about drawing a string on a picturebox in the form load event. So I have a picturebox on a form and in the form load event of this form I have this code:
Dim gx As Graphics = PictureX.CreateGraphics
Dim f As Font = New Font("Arial", 8)
Dim brr As Brush = New SolidBrush(Color.Black)
' Add the copyright text
gx.DrawString("1", f, brr, 2, 5)
But when I load the program nothing is drawn in the picturebox. Is there something wrong with the code or should I use the paint event of the picturebox?
By the way I also used this code in another program and there it works flawlessly, everything is drawn in the right place there when i load the program.
I'm writing a game in VB 2005 Express and at the moment it involves using the drawimage method to first draw a background and then various sprites onto my form every time a timer ticks. It's all double buffered so there's no flicker or anything but it just goes very slowly, how to speed it up. I've come across the term blitting (bitblt), which seems like it would be useful, but haven't been able to work out exactly what it is, whether it can be used in this version of vb, how to use it etc.
Here's my code (or at least an approximation of the relevant bits seeing as the whole thing is rather long):
Public Class Form1
Dim BackgroundImg as Image 'plus all of my sprite images declared
Dim Mybuffer As BufferedGraphics
Dim MyContext As BufferedGraphicsContext
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
[Code] .....
I'm just getting started, and it's as simple as that: I need guidance to draw a rectangle or place a dot or a point on Form1, in VB 2008 Express. I knew how in VB6 -- let's build on that.
View 3 RepliesI am working on a snake game for my portfolio and was wondering where the best place to put the logic for drawing the snake. Should the code reside within the snake object or within the form? Either would work, but I am wondering from a business objects/coding standard perspective where such code belongs.
View 2 RepliesI've decided to learn Visual Basic .Net as this is what some of my colleagues work with, and this will allow me to work with them on projects.I have purchased Microsoft Visual Basic 2010 Step by Step and downloaded the sample files. When I am trying to debug the first sample application (a Windows form), it is telling me that it can't load System.Drawing V4.0.0.0. However, if I create a new Windows Form application (C# or VB.Net) this works fine.
I had a look at the References tab in the project settings and System.Windows.Forms is referenced, but the version referenced is 2.0.0.0. I have removed and re-added this reference and it stays at 2.0.0.0 and I still get the error.Does anybody have any ideas as to what may be going on?
Say I have 3 Buttons, labelled: Unit 1, Unit 2 and Unit 3. When I click on any button I want a drawing of that unit to appear on screen at a pre-specified starting point. Thereafter when I press any other one of the buttons the unit drawings appear alongside each other in a line. So I could end up with:
[Code]...
With this line...
If PictureBox1.Image = My.Resources._2star Then
I get this error: Operator '=' is not defined for types 'System.Drawing.Image' and 'System.Drawing.Bitmap'.Is there another way to say = with images?
Here is my favicon code
Dim oURL As Uri = New Uri(e.Uri.AbsoluteUri)
Dim favicon As Image
If oURL.HostNameType = UriHostNameType.Dns Then
[code]....
The error is Value of type System.Drawing.Image cannot be converted to System.Drawing.Icon Is it even possible to make the favicon be the icon of the form?
im using an MDI parent form and MDI Child. how can i print the image that's inside a picture box that's inside the Child from a button that's on the Parent?when i try to use print preview or print dialog, i can't get it to recognize that the document is the picure inside the picture box. i've looked up this error message:Value of type 'System.Drawing.Image' cannot be converted to 'System.Drawing.Printing.PrintDocument'.[code]
View 6 RepliesI am making a web browser using geckofx. I have put the favicon in a picture box but I have changed my mind and now I want it as the form's icon. The code for the favicon is:[code...]
The favicon works fine in the picture box but i think it will look better as an icon. If i change the line Me.PictureBox1.Image = favicon to Form1.icon = favicon I get the error Value of type 'System.Drawing.Image' cannot be converted to 'System.Drawing.Icon'. How can I get this to work?
I have a System.Drawing.Graphics g, which draw something in a PictureBox. Now I want to export this pGraphics to a new System.DrawingImage pImage (or Bitmap). But how?
Dim pImage As Bitmap
Dim g As Graphics
g = Graphics.FromImage(b)
[Code].....
I have two graphics I'm trying to superimpose into one, then display in a DataGridViewImage cell...The Value property of a DataGridViewImage is an Image type.
Dim Image1 As System.Drawing.Image = imgl_Imagelist1.Images(0)
Dim Image2 As New Bitmap(imgl_ImageList2.Images(0))
Dim DualGraphic As Graphics = Graphics.FromImage(Image1)
[code].....
I have a form which changes every few seconds (about 10 or 15 seconds) to a different "screen" When it changes, it hides and shows different labels, changes background, and hides and shows different picture boxes.
Anyway, when it changes, there are visible black boxes and it "flashes" somewhat as well during the change. I was wondering if there was any way to reduce or completely eliminate these symptoms.
I have made an application that can render and save a given element.
[Code]....
This works great except I have to specify which element I want, and I essentially want all of them. Is there some sort of for each that could iterate through all the possible elements?
(Edit: to clarify, my main goal is concurrency, but not necessarily for multi-core machines)
I'm fairly new to all concepts on concurrency, but I figured out I needed to have parallel drawing routines, for a number of reasons:
I wanted to draw different portions of a graphic separatedly (background refreshed less often than foreground, kept on a buffer). I wanted control about priority (More priority to UI responsiveness than drawing a complex graph). I wanted to have per-frame drawing calculations multithreaded. I wanted to offer cancelling for complex on-buffer drawing routines.
However, being such a beginner, my code soon looked like a mess and refactoring or bug-fixing became so awkward that I decided I need to play more with it before doing anything serious.
So, I'd like to know how to make clean, easy to mantain .NET multithreaded code that makes sense when I look at it after waking up the next day. The bigest issue I had was structuring the application so all parts talk to each other in a smart (as opposed to awkward and hacky) way.
I have a preference for sources that I can digest in my free time (e.g., not a 500+ pages treatise on concurrency) and for C#/VB.NET, up to the latest version (since I see there have been advances). Basically I want something straight to the point so I can get started by playing with the concepts on my toy projects.
I want to write a sub in VB like this
[code]...
mainCanvas is a canvas object on the form class, But this does not work.
How can I draw an image in a program using visual basic, without actually drawing the image first on an graphics program or on paper?
View 2 RepliesHowever my m8 will support me with any problems about the server, but he doesn't know how to fix this one in the client.The Sub have to create random sized circles, which are showed when u just hit some **** in space.It works fine in VB6, but in .NET i got a lot of ISSUES:
Sub DrawHitCircles(ByRef accuracy As Short)
Dim GO As Single
Dim check As Short
Dim guns As Short
[code]....