|
|
I have a barcode scanner here, which can send bar codes as text, or work as a USB HID barcode scanner. I have no idea how to access the data in the second case, despite some heavy googling. Can anyone give me some pointers ?
Christian Graus - Microsoft MVP - C++
|
|
|
|
|
Hi,
I have a question on how a thread return its control to the main program
thread(which run the GUI). The problem is that the main program thread
will generate thread to run other task and to a certain point, I want the generated task-running thread return task to the main program thread to continue running task. Is it possible and how to do that ?
Thank
|
|
|
|
|
Are you looking for the Join method on the System.Threading.Thread class?
Regards
Senthil
_____________________________
My Blog | My Articles | WinMacro
|
|
|
|
|
Thanks for your reply.
What I want to do is as follow,
1. The main thread running the main window GUI as window form
which can accept user input all the time.
2. The second thread running some task,
and after the task is finished, the thread need to ask
main window form(controlled by the main thread) to display some
child window. But I find that the child window will not function
properly as two threads try to control the same GUI at the same time.
So I want to pass the control from the second thread to the main thread
and let the main thread open the child window itself.
Then how can I do that ?
|
|
|
|
|
You're looking for the Invoke/BeginInvoke methods on System.Windows.Forms.Control . Calling Invoke or BeginInvoke on the form, will call the delegate passed as a parameter on the main thread, which is exactly what you want. This[^] might help you understand it better.
Regards
Senthil
_____________________________
My Blog | My Articles | WinMacro
|
|
|
|
|
Thanks so much ! It is what i need exactly.
|
|
|
|
|
Hello all,
I want to create an application which inserts lines of text (of specified fonts) into a bitmap file, in certain locations.
I have searched the help for Font methods and bitmap methods, but came up with nothing. Any ideas anybody?
Thanks a lot,
Gal
|
|
|
|
|
A long time ago, I did a project in VB.NET (ASP.NET) that added text to some picture a person uploaded. This is probably what you need. This is the code in VB.NET
<br />
'adjust image<br />
Dim bmap As System.Drawing.Image<br />
bmap = System.Drawing.Image.FromFile("c:\test.bmp") 'you're file<br />
<br />
'add text<br />
Dim g As Graphics = Graphics.FromImage(bmap)<br />
Dim drawFont As New Font("Verdana", CSng(bmap.Width / 10), FontStyle.Regular, GraphicsUnit.Pixel)<br />
<br />
'create brush to draw text <br />
Dim drawBrush As New SolidBrush(Color.FromArgb(241, 238, 229))<br />
<br />
'position text at the bottom of the screen<br />
Dim xPos As Integer = CInt(bmap.Width / 37)<br />
Dim yPos As Integer = CInt(bmap.Height - ((bmap.Height / 6) * 2))<br />
'make rectangle for text<br />
Dim rect As New RectangleF(xPos, yPos, CSng(bmap.Width - 2 * xPos), CSng(((bmap.Height / 5) * 3)))<br />
'draw text<br />
g.DrawString("THE TEXT YOU WANT TO SHOW", drawFont, drawBrush, rect)<br />
<br />
<br />
It's not the most beautifull code, and it's in VB.NET, sorry for that. If you need the example in c# please let me know. The "save" part of the image is not included, but you just use the save method of the BitMap object. Don't forget to call the Dispose method of all the Bitmap and graphics object.
|
|
|
|
|
Great, I'll try it.
Thanks
|
|
|
|
|
gnjunge wrote:
Don't forget to call the Dispose method of all the Bitmap and graphics object.
And the Brush Object
|
|
|
|
|
May be somebody knows if such thing is exist. I mean, to compile project in c# into executable file like c++ does?
|
|
|
|
|
You do compile C# code into an executable, like C++. And just like C++ programs require the C Runtime Library, .NET-based applications like C# apps require the .NET framework runtime.
There are certain apps out there (google for .NET linker) that will link parts of the framework into your apps, thereby making your executable large (7 MB or so), but not requiring the framework.
Tech, life, family, faith: Give me a visit.
I'm currently blogging about: Homosexuality in Christianity
Judah Himango
|
|
|
|
|
|
This happens even if I tell Visual Studio not to open a solution on startup.
If I do have it open the most recent solution, that solution completely
loads first. If I tell it to open and show the Open Solution dialog, it
does that. If it is supposed to open the Start Page, that opens.
Regardless, the startup action finishes and then it locks up.
Now technically, it might not have locked up. All I know is that the
hourglass cursor never disappears. So I go to the taskbar, and force
Windows to close the program. I see no warning other than what Windows
provides. That leads me to believe Visual Studio is unaware of what is
happening. Next time I start Visual Studio, it runs fine -- but only for
that session.
Does anyone have any ideas?
--------------
Will Pittenger
|
|
|
|
|
|
Not yet. I am trying to avoid doing so. I customize the IDE heavily. I may do that. It might solve another problem where the stack overflows when I set the Location of a child I wrote from the control's parent. No, there is no code of mine overriding that property. There is no code subsribing to the control LocationChanged event.
--------------
Will Pittenger
|
|
|
|
|
Hi Will L Pittenger,
sometimes it helps to start the IDE from command line with the argument /setup.
This will reinitialize all plugins and the windows location, but no other stuff like keymapping.
Good Luck!
Niedzi
|
|
|
|
|
What was that supposed to do? It popped up a window briefly and then vanished. When I start normally, the problem is still there.
--------------
Will Pittenger
|
|
|
|
|
What it did was reset my toolbar layout without fixing anything. That toolbar layout took hours to do. I doubt that I will be able to redo it exactly. Thanks a lot.
--------------
Will Pittenger
|
|
|
|
|
Hi all, here is what I do and need;
- I create multiple controls at runtime: (myControl1, myControl2, myControl3...)
- I have only one event definition for all my controls: (myControl_Enter)
- Everything works fine but what I need is:
when the myControl_Enter event is fired, I want "only" that instance
of the control to change backcolor.
below is the part of the code needed:
<br />
private int counter = 0;<br />
<br />
public void AddNewMyControl()<br />
{<br />
counter += 1;<br />
myClass.MyControl myControl = new myClass.MyControl();<br />
myControl.Dock = System.Windows.Forms.DockStyle.Top;<br />
myControl.Location = new System.Drawing.Point(0, 0);<br />
myControl.Name = "myControl" + counter;<br />
myControl.Size = new System.Drawing.Size(536, 168);<br />
myControl.Enter += new System.EventHandler(myControl_Enter);<br />
this.Controls.Add(myControl);<br />
}<br />
<br />
private void myControl_Enter(object sender, System.EventArgs e)<br />
{<br />
<br />
}<br />
thank you in advance.
Radgar
"Imagination is more important than knowledge." - Albert Einstein
|
|
|
|
|
The sender object that is sent as one of the arguments of the event is a reference to the object throwing the event.
so you only have to cast the sender object and set the background color. Like this:
<br />
private void myControl_Enter(object sender, System.EventArgs e)<br />
{<br />
((myClass.MyControl)sender).BackColor = System.Drawing.Color.Green;<br />
<br />
}<br />
<br />
Gidon
|
|
|
|
|
Thank you Gidon. You saved me lots of time.
Radgar
"Imagination is more important than knowledge." - Albert Einstein
|
|
|
|
|
I want to know how can i obtain the login (username) of every account in the PC
|
|
|
|
|
WMI is the answer. Go through MSDN for the details.
Live Life King Size
Alomgir Miah
|
|
|
|