|
Hi,
Does anybody has any idea how to give implementation in c-sharp, of the following feature of Yahoo or MSN:
Show me as "Away" when I am inactive for 10 minutes.
I have a chat client application developed in c-sharp. And now I want to give the same feature in my app too.
Prompt reply will be appreciated.
Regards,
Kamran
|
|
|
|
|
You could take a timestamp everytime the user of your application does something and store it somewhere. This timestamp value then gets compared with the actual time inside of an timer event handler and if the difference is greater than 10 min you set the status to "Away".
www.troschuetz.de
|
|
|
|
|
Simple solution - have a timer that ticks every so often (depending on how accurate you want your away timer to be)
Every time the timer ticks, increment the counter, when the counter goes above a pre-set value (i.e. how ever many timer ticks there are in 10 minutes) you can set your status to away.
Now, in any of your mouse/keyboard handlers, just reset that counter to zero if you've got user input
--
Help me! I'm turning into a grapefruit!
Phoenix Paint - back from DPaint's ashes!
|
|
|
|
|
Hi Benjymouse,
Thanks for your prompt reply. It helps me a lot to understand the solution.
But how to capture mouse/keyboard events of windows. Remember my chat application application needs to be notified of any activity on windows for example if my chat application is minimized, and a user only moves his mouse on the desktop, my application should be able to capture this event.
I hope you understand what i mean.
Regards,
Kamran
dearkami@yahoo.com
|
|
|
|
|
|
Thanks a lot Benjymous,
I hope this will help me to resolve my problem.
Thanks again!
Best regards,
Kamran
|
|
|
|
|
hi there,
How can draw shapes inside a control( a custom label control). The real idea behind this is, partitioning status through this control. Otherwise how can i partition a label control with different region.
Sreejith Nair
[ My Articles ]
|
|
|
|
|
overload the paint method of the control with what you want it to show...
|
|
|
|
|
I tried but failed. Reason is i need to split the entire size of controls into three different region and then need to get a block from that. This block need re design at run time based on user request(re design means - > assign back color,fore color,outer line color and highlight color etc). Some time user may merge any two block of region into one or the entire three block into one. So i am in trouble. Any idea ?
Sreejith Nair
[ My Articles ]
|
|
|
|
|
I load my data into Datagrid, I'd like open a new form(contain the data about this row) by clicking on each row of the Datagrid . How can i do that ???
|
|
|
|
|
Use HiteTestInfo class which contains information about a part of the System.Windows.Forms.DataGrid at a specified coordinate. See MSDN for more details.
Eg:
<br />
System.Drawing.Point pt = this.dgUnAllocatedOrders.PointToClient(Cursor.Position); <br />
DataGrid.HitTestInfo hti = this.dgUnAllocatedOrders.HitTest(pt); <br />
if(hti.Type == DataGrid.HitTestType.RowHeader) <br />
{ <br />
Yourform alloc=new Yourform();<br />
alloc.ShowDialog();<br />
}
Sreejith Nair
[ My Articles ]
|
|
|
|
|
Hi
If we check Font.Height property it returns the value in pixel. How to convert the same in Twips?
please guide
|
|
|
|
|
Try the following:
[DllImport("gdi32.dll")]
static extern int GetDeviceCaps(IntPtr hdc, int nIndex);
int WU_LOGPIXELSX = 88;
int WU_LOGPIXELSY = 90;
int TwipsPerInch = 1440;
private int PixelsToTwips(int pixels, bool bIsHorizonal)
{
int twips;
Graphics g = Graphics.FromHwnd(IntPtr.Zero);
IntPtr hdc = g.GetHdc();
int pixelsPerInch;
if(bIsHorizonal)
pixelsPerInch = GetDeviceCaps(hdc, WU_LOGPIXELSX);
else
pixelsPerInch = GetDeviceCaps(hdc, WU_LOGPIXELSY);
g.ReleaseHdc(hdc);
double numInches = pixels/pixelsPerInch;
twips = (int)(numInches * TwipsPerInch);
return twips;
}
- Nick Parker My Blog | My Articles
|
|
|
|
|
Thanks for the valuable input....
extending the same thread;
if the Unit of the given font is Graphics.World, how to convert the font height in to twips?
please guide
|
|
|
|
|
I've a server application, which will return some strings for different users. The users can set their locale to the server, so the return string is will be in the language they specified.
In my scenario, i coudln't use CultureInfo.CurrentCulture as my server has to serve differnt locales. Is it the only resort I've to use is creating different resources file, and load it up with differnt ResourceManagers, and get the string myself. Can I built them into 1 assembly and loading with 1 ResourceManager only ? As I heard that ResourceManager is quite resource consuming.
Hiya, Everybody ^^
|
|
|
|
|
Hi,
I want to implement several custom cursors in my application. Is it possible to load the cursors from an imagelist or do I have to put them as a ressource in my application and load them this way?
Thanks,
Dennis
|
|
|
|
|
Hi,
I have written a SQL database application which works great. The client has a remote pc (off site - which has its own database) and a remote laptop (on-site - which has its own database) so the employee can work if the power goes out. What I want to set up is a way to extract changes made to the database into packets and FTP to the offsite pc and read in those changes. I want to achieve a simular result but over the network, not through FTP.
Is there a way to extract changes from an SQL database of all transactions so i can send this information to the offsite and onsite pc?
OR
Is there any way to achieve this????
I am open to realistic suggestions or products.
Thanks
Stephen
|
|
|
|
|
Replication will help you out. But i am not sure about how to configure Replication in SQL Server.
Sreejith Nair
[ My Articles ]
|
|
|
|
|
|
Unfortunately, there is no .NET way of launching the .NET app. Your still dealing with a COM based app that knows nothing of the .NET Framework. So, the .NET application and Framework must be adapted to work in the COM world. That's why you need all the configuration on the client side. You can't get around it...
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
hi
how can i make the tap key when pressed go to specific columns
thx
|
|
|
|
|
Override ProcessCmdKey and change the CurrentCell property when ever Tab Key is being pressed. Refer the below code for details.
public class myGrid: System.Windows.Forms.DataGrid
{
protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
if(keyData == Keys.Tab)
{
this.CurrentCell = new DataGridCell
(this.CurrentCell.RowNumber,1);
}
return base.ProcessCmdKey (ref msg, keyData);
}
}
Do revert back whether it could solve your purpose or not?
|
|
|
|
|
hi
i make the Right to left Property of DataGrid to "true"
but thier is a problem that the cells when i write Numbers in it ... it displays this numbers in "arabic"
i want the numbers to be in "English"
what can i do !!?
Help !?
|
|
|
|
|
First tell me what the Localizble property value of your parent control. I mean if your datagrid contained in a form. Then what is the Localizble property value of that form. If it is True . Set it back to False .Why cause the RightToLeft property is an ambient property. An ambient property is a property on a control that, if not set, is retrieved from the parent control.
Sreejith Nair
[ My Articles ]
|
|
|
|
|
Hello all
I have this problem with managing resources. I am writing a cataloging application in which i need to compute a MD5 hash value for each file in the tree structure given a directory. This is done recursively. Now until I have added a function to compute the hash everything was working smoothely however now the application freezes.
This could be because i do not have enough free resources. I tried calling a Dispose method of the MD5CryptoServiceProvier but it is protected therefore not allowed to be accessed.
IS Garbage Collector an option? If so where should it be applied.
To give you an idea. The function ComputeHash looks the following:
private string ComputeDigest(FileInfo file)<br />
{ <br />
MD5CryptoServiceProvider csp = new MD5CryptoServiceProvider();<br />
FileStream fstream;<br />
try<br />
{<br />
fstream = File.OpenRead(file.FullName);<br />
}<br />
catch(Exception e)<br />
{<br />
MessageBox.Show("Error Occured: " + e.Message);<br />
return null;<br />
}<br />
byte [] hash = csp.ComputeHash(fstream);<br />
fstream.Close();<br />
string hash_string = String.Copy(BitConverter.ToString(hash));<br />
csp.Clear();<br />
return hash_string;<br />
}
Izabela
|
|
|
|