|
Hello, I have setup a timer to simulate cursor blinking. My program has multiple threads. the thing is that my timer went off but it never calls the function delegate to the Tick events.
Do you what is reason? why the tick event nevers calls the function to do my blinking?
private System.Windows.Forms.Timer timer = new System.Windows.Forms.Timer();
timer.Tick += new EventHandler(BlinkMode);
timer.Interval = 150;
timer.Enabled = true;
//=============================================================
// timer tick handler
//=============================================================
private void BlinkMode(Object obj, EventArgs ea)
{
if (!BlinkCursor)
{
if (curX < 19) // Don't show the cursor if it's at the end of the line
{
DrawChar('_', curX, curY); // Draw an underscore char at the current coordinate
BlinkCursor = true;
}
}
else
{
DrawChar(HiddenChar, curX, curY);
BlinkCursor = false;
}
}
Donkaiser
|
|
|
|
|
You must start the timer.
timer.Start();
|
|
|
|
|
timer.Enable starts the timer
|
|
|
|
|
Hello,
I think when you are multi threading, you have to use System.Timers.Timer Class.
With Timer.Elabsed Event.
All the best,
Martin
|
|
|
|
|
Try to put your code in method BlinkMode in try catch.
If you get an exception, then you have a problem with the other thread.
Use this to avoid exception :
private void Blinking()
{
}
private void BlinkMode(Object obj, EventArgs ea)
{
MethodInvoker mi = new MethodInvoker(Blinking);
Invoke(mi);
}
|
|
|
|
|
I just want to be more specific about what im doing. Im developping with CF 2.0 VS 2005 and C#.
I have a class library which simulate a VT100 like terminal, and i added it as reference to my project. From my main project i call a method from that added class library. In this method, I process all the data that need to be printed on the terminal screen and then i set the timer like the code above which will trigger the BlinkMode method. while debugging, I can see that my timer went off but nothing from the BlinkMode() works.
Donkaiser
|
|
|
|
|
well after the timer got fired, BlinkMode() never been called. that why it's weird. I see what you waant me to do but if the BlinkMode() never get called so do the Blinkinh().
Donkaiser
|
|
|
|
|
Ok,
Then you have an other threading problem.
I think you have to invoke the Method which you are calling from your main project.
Feel free to ask for a sample code.
All the best,
Martin
|
|
|
|
|
public void Blinking() //Is this the Method which is called from your main project?
{
//Have you tried to invoke this Method?
Timer.Tick+=......
}
private void BlinkMode(Object obj, EventArgs ea)
{
//
}
|
|
|
|
|
no they are locally called in my terminal.
But I guess I solved the problem by setting up the timer inside the constructor. I guess setting up the timer inside a function it's not working.
Donkaiser
|
|
|
|
|
Some one can explain how to use Layer with Windows Forms ?
Or maybe there is some example ...
Thanks.
|
|
|
|
|
What do u mean by Layers?
Pramod
|
|
|
|
|
For example - i have 2 control that need to be on same position.
I know that i can define some layer that will hold the first control - and some other layer that will hold on the second control.
I can marge them both , see each of then in separate.
I don't know how to define/use this feature....and i need help
|
|
|
|
|
|
I realy dont know where to find some help ....
|
|
|
|
|
I'm new to Active Directory and Directory services and thought I try something simple to begin with. I have the following code:
using System;
using System.Collections;
using System.DirectoryServices;
namespace ConsoleApplication1
{
///
/// Summary description for Class1.
///
class Class1
{
///
/// The main entry point for the application.
///
[STAThread]
static void Main()
{
DirectoryEntry de = new DirectoryEntry();
Console.WriteLine(de.Path);
DirectoryEntries des = de.Children;
foreach(DirectoryEntry entry in des)
{
Console.WriteLine(" Child: " + entry.Name);
}
}
}
}
which sometimes generates the required output and other time gives me the following error:-
An unhandled exception of type 'System.Runtime.InteropServices.COMException' occurred in system.directoryservices.dll
Additional Information: The specified domain either does not exist or could not be contacted.
Has anyone any clues as to what is causing this intermittent error and how to fix it.
|
|
|
|
|
Hello,
You have to set the Path Property by yourself.
For this reason you can use the Constructor with string Parameter.
string path = @"C:\";
DirectoryEntry de = new DirectoryEntry(path);
All the best,
Martin
|
|
|
|
|
I am trying to set the height and width of my main form programaticaly. What is the syntax for doing this?
|
|
|
|
|
Form1 f = new Form1();
f.Size = new Size(100,200);
or
f.height = 200;
f.width = 100;
|
|
|
|
|
this.Size = new System.Drawing.Size(xxx, yyy);
All the best,
Martin
|
|
|
|
|
Thank you very much. This syntax works perfectly.
|
|
|
|
|
|
public Answers GetAnswers()<br />
{<br />
return Search(Question);<br />
}<br />
|
|
|
|
|
|
http://www.parashift.com/c++-faq-lite/how-to-post.html#faq-5.2
|
|
|
|