|
I am fairly new to .Net and C# but have what I hope is an easy to answer question. I have a Windows form with a menuStrip and a statusStrip. I am wanting to have the MouseEnter event determine which menu the mouse is over and update the statusStrip label accordingly. Can someone please help?
Thank you.
centershot
|
|
|
|
|
What you would want to is use the MouseEnter event for the MenuItem itself (ex "exit").
private void Form1_Load(object sender, EventArgs e)
{
exitToolStripMenuItem.MouseEnter += new EventHandler(exitToolStripMenuItem_MouseEnter);
}
void exitToolStripMenuItem_MouseEnter(object sender, EventArgs e)
{
lblOnStatusStrip.Text = "This is an Exit Function.";
}
hope this helps
Don't be overcome by evil, but overcome evil with good
|
|
|
|
|
Hi,
I am coding a game and I want to give user a little time when he/she presses a button. So I created a Thread object but VC 2005 gives error in the function which i bound to the thread. Like that:
private void timer1_Tick(object sender, EventArgs e)
{
if (..sth...)
{
Thread t = new Thread(new ThreadStart(ThreadProc));
t.Start(); }
}
public static void ThreadProc()
{
Thread.Sleep(1000);
((Button)selectedButtons[1]).Enabled = false;
((Button)selectedButtons[1]).BackgroundImage = null;
selectedButtons.Clear();
}
It says:
An object reference is required for the nonstatic field, method, or property 'finalstand.Form1.selectedBtns'
Any Suggestions?
Note: filestand is the name of the project
|
|
|
|
|
What is selectedButtons ? and selectedBtns ?
maybe best to show more of the code...
Luc Pattyn
|
|
|
|
|
I mean that I want to freeze the program one or more seconds and then change the properties of some buttons.
SelectedButtons (actually it was selectedBtns but i changed it while i am copying it to here) is the Arraylist which I added some Button objects in it. Namely, in the thread function I want to reach these ArrayList (and buttons in this ArrayList of course) and change them.
But if there is an another way to freeze the program, I am open to new ideas.
Thanks
|
|
|
|
|
Guffa is right of course. Why make ThreadProc() static ?
I am still uncertain about your intent. Seems like a button, once pressed,
gets disabled one second later ?? At best this is an attempt to inhibit multiple clicks. But what if it is pressed sooner ? and how do you re-enable such button
(it is not in the ArrayList anymore).
Luc Pattyn
|
|
|
|
|
You can't access an instance member from a static method.
---
It's amazing to see how much work some people will go through just to avoid a little bit of work.
|
|
|
|
|
I think you maybe use Invoke function, because you want to change some controls which is in the main thread.
E.G.
*********
public static void ThreadProc()
{
Thread.Sleep(1000);
base.Invoke(new EventHandler(this.ReallyClick));
}
private void ReallyClick(object sender, EventArgs args)
{
((Button)selectedButtons[1]).Enabled = false;
((Button)selectedButtons[1]).BackgroundImage = null;
selectedButtons.Clear();
}
**********
experiment it
|
|
|
|
|
I think this is the thing I am looking for. But when I try this it says:
Error 1 : Keyword 'base' is not available in a static method
Error 2 : Keyword 'this' is not valid in a static property, static method, or static field initializer
Do you know why?
|
|
|
|
|
make your control a static one, also the function you are passing to the event handler.
public static System.Windows.Forms.Button btnClose;
then, you cannot use "this" inside a static method. instead, make your method static and give it's name without "this.".
eg
<br />
public static void reallyClick()<br />
{<br />
}<br />
:Gong: 歡迎光臨 吐 西批 :Gong:
|
|
|
|
|
Because it's still a static method.
---
It's amazing to see how much work some people will go through just to avoid a little bit of work.
|
|
|
|
|
How did you learn to program?
Is it from the internet? a book?
If from internet wut site and if book, wut book?
I'm trying to learn any language like C++ or C# and i dont have any materials and dont know where to get some good sources.
When you first learn your language, was it hard and how long did it take you to start to create simple programs?
I'm sry if this is too many questions but im new here and i want to understand some of the experiences you had.
|
|
|
|
|
Code2326 wrote: How did you learn to program?
From the book that came with the computer and magazines that showed me how to do certain things.
Code2326 wrote: When you first learn your language, was it hard and how long did it take you to start to create simple programs?
One of my first programs was:
10 PRINT "How old are you?"
20 INPUT a
30 IF a < 8 THEN PRINT "You're too young to use this computer!"; GO TO 10
40 PRINT "Okay - You are old enough to use this computer"
I was about 8 or 9 and I didn't want my younger sister to use the computer.
|
|
|
|
|
Colin Angus Mackay wrote: I was about 8 or 9 and I didn't want my younger sister to use the computer.
How long did it take for your sister to catch on and lie about her age?
That's no moon, it's a space station. - Obi-wan Kenobi
|
|
|
|
|
PaulC1972 wrote: How long did it take for your sister to catch on and lie about her age?
As I recall she wasn't even sufficiently interested to type in her age. (She was only about 5 or 6 at the time)
|
|
|
|
|
What computer did you write the BASIC program on?
You will see a delete button on each of your posts. Press it. - Colin Angus Mackay
|
|
|
|
|
A Sinclair ZX Spectrum 48K (Mk 2 - which had a slight overheating problem that means the colours would get skewed when it heated up. I had to adjust a variable resistor on the motherboard sometimes.)
|
|
|
|
|
Colin Angus Mackay wrote: Sinclair ZX Spectrum 48K
That's so cool. Here's what I started off with: http://oldcomputers.net/ts1000.html[^]
--modified
I wish I could find it. I do still have my old Commodore 128 in the attic and have been debating on pulling it out to fiddle around with it
You will see a delete button on each of your posts. Press it. - Colin Angus Mackay
|
|
|
|
|
That's the same one I started with too! 2K of memory and a cassette recorder, who could ask for anything more?
- S
50 cups of coffee and you know it's on!
|
|
|
|
|
Yeah, and I remember showing off to all my friends what I could do with the old Sinclair. Upgraded to the Commodore 64/128 and that was cool. Then after that, got a 80386 when they first came out. It had 4 megs of ram and a "vast" 80 meg hard drive
If you try to write that in English, I might be able to understand more than a fraction of it. - Guffa
|
|
|
|
|
You skipped over the 8088/8086/80286? Guess that Commodore was pretty sweet! Never got hold of one, but the graphics we're supposed to be impressive.
- S
50 cups of coffee and you know it's on!
|
|
|
|
|
Steve Echols wrote: You skipped over the 8088/8086/80286?
Yep. The Commodore wasn't all that bad of a machine for its time. It was a big leap from a 6502 based machine to Intel :-> The junior college I started off at had their Ada compilers on 8088s and it took 2 minutes to compile a typical hello world program. My 386, well, about 5 seconds
If you try to write that in English, I might be able to understand more than a fraction of it. - Guffa
|
|
|
|
|
I can hear my kid now (in 15 years) - "You used a silicon based processor? How'd you ever get anything done?"
- S
50 cups of coffee and you know it's on!
|
|
|
|
|
Steve Echols wrote: I can hear my kid now (in 15 years) - "You used a silicon based processor? How'd you ever get anything done?"
No kidding
If you try to write that in English, I might be able to understand more than a fraction of it. - Guffa
|
|
|
|
|
PaulC1972 wrote: still have my old Commodore 128
Hang on to it! I still kick myself for getting rid of my C64. I had 2 (one for parts), a tape drive, a butt load of software (even a very functionable GUI!).
I sold the whole thing at a yard sale for $50!
David Wilkes
|
|
|
|