|
You are the man, my friend. It worked; thank you very much
sasa
|
|
|
|
|
No problem, I can remember struggling with this myself, I don't like the way MS has implemented this particularly.
Cheers!
|
|
|
|
|
Hello all,
I have been using C# for 2 weeks now, and although I have gotten the basics down I am still having problems with an application that I am trying to create.
My main problem now is that I want to read data from the serial port directly to a struct. Originally I wanted to read it into a bitfield struct, but I found out that bitfields are not supported. (which is the solution I would have used in c++)
After leaving this topic to continue coding other things, I came back to it and the problem has stumped me for a few more days now. In desperation to continue meeting my due date, I am asking the community if they could help me code this. (I have no problems opening and reading from the serial port, I just can't seem to read the streaming data into a few different structures)
Any help would be greatly appreciated.
|
|
|
|
|
|
Thanks, I will see if I can make some sense of this.
|
|
|
|
|
Hi Ppl,
I have a small question. Is it possible to use sendto to send entire structs / arrays with a few commands?
Right now i have a function to create one long string and an other one to make it back to an array but this kind of in efficient and the data u can send is pretty limited.
Can anyone tell me how to send data in an efficient way?
Kind regards ,
Jacco
|
|
|
|
|
|
hi
i like to send ascii character with dec= 205 to my com port,
but instade of getting the right character i get I => wrong off cource,
how do i get it to be right?
this is how i get it done :
char ch = (char)205;
for the first 127 characters there is no problem,
anybody any ideas???
pllzz help
|
|
|
|
|
Hi,
To send ASCII characters try
char c = 'c';
byte[] b = System.Text.Encoding.ASCII.GetBytes(new char[] { c });
port.Write(b, 0, b.Length);
This will work for any character, and GetBytes works for strings too. In order to send a decimal 205, don't use char but use byte instead.
|
|
|
|
|
hi all
i was playing around making a small image viewer app type thing (first foray into windows apps) and have run into a problem geting the child forms (or any off them for that matter) to communicate in a way I want, I'm not sure if its even possible, it should be as it seems to me to be a relatively fundamental use of them.
basically I was trying to get the mouse coordinates to update another child form that iwas going to use as a control, so ...the parent form opens the two child forms, one contains a picture anmd the other is just for info (the coords), I can pass the info over if I do a
MessageBox.Show("e.X.ToString());
however when I try to update, say a label it doesnt do anything. I imagine I'm doing something idiotic or missing something very basic, but like I said I'm jst on a learning curve atm ;0
in Form2.cs I have
<br />
private void OnMouseMove(object sender, MouseEventArgs e)<br />
{<br />
coordsPanel f = new coordsPanel();<br />
f.updateCoords(e);<br />
}<br />
and in coordsPanel.cs I have
<br />
public void updateCoords(MouseEventArgs e)<br />
{<br />
MessageBox.Show(label1.Text);
label1.Text ="foo";<br />
MessageBox.Show(e.X.ToString());
MessageBox.Show(label1.Text);
}<br />
the values getting across just not updating.
it works fine if its all in one form.
The label is declared as :
private System.Windows.Forms.Label label1;
I've tried using get/setand nothing seems to work.
I DON'T get any errorsand the app works fine so I'm not sure whats happening
any pointers appreciated.
t
|
|
|
|
|
sometimes (especially when you have a high cpu load) the controls do not invalidate (redraw, whatever ) though you change some of their values. In this case, you will have to use "System.Windows.Forms.Application.DoEvents()" - this static method allows you to let your application do all of the stuff in the queue.
I guess this won't be a solution for your problem because the interval between popping up a messagebox and clicking its "ok" button is enough time to get its events done...
try to add this statement first - if it does not work add a label1.Invalidate() which causes the label to redraw itself and all its child controls. (you also could invalidate the whole form to make sure everythings updated).
I guess this will help but i'm not sure at all.
Good luck,
mik
|
|
|
|
|
hi mik
i tried that but no joy im afraid.....
am playing with EventHandlers now to see if that help
t
|
|
|
|
|
erm i just noticed you set the labels text to "foo" EVERY time. you should change this to e.X.ToString() to set the labels text to the X position of the mouse.
|
|
|
|
|
hi
yeah i ended up just trying to get it do anything, its original text value is label1 and should change to foo. the message popups were just to see what was happening
|
|
|
|
|
|
Irfan Faruki wrote: Should i be using a Textbox or a Richtext control
Depends on how do you want to look and function your notepad
Irfan Faruki wrote: How do i go about replicating Find & Replace function
string objects have several functions that you might consider interesting:
- IndexOf - returns an integer greater or equal to 0 if what you seek is in the string, or it returns -1 otherwise
- Replace - replaces a part of a string with a new string (don't have to be the same length)
Irfan Faruki wrote: How do i go about replicating Go To function of notepad
if you use a textbox there is the Lines property which is a string array so you read the line number from the user and pass it as an indexer in that array.
Hope it helps you. Good luck
Do your best to be the best
|
|
|
|
|
Thanks a lot for your reply. I will give it a try and post back if i have problems
I am still learning
|
|
|
|
|
You know how each MSN messenger emoticon actually represents some text? Ok, to clarify, I made a simple form with 2 richtext boxes and 1 button which does the following:
<br />
private void btn_Ok_Click(object sender, EventArgs e)<br />
{<br />
DataFormats.Format MyFormat = DataFormats.GetFormat(DataFormats.Bitmap);<br />
DataFormats.Format MyFormat2 = DataFormats.GetFormat(DataFormats.Text);<br />
richTextBox1.Paste(MyFormat);<br />
richTextBox2.Paste(MyFormat2);<br />
}
First, I copy an image from say a word document. When I click on my button, the image appears in richTextBox1 but nothing appears in richTextBox2. However, if I copy a MSN Messenger emoticon, the emoticon picture appears in richTextBox1 and the corresponding text appears in richTextBox2.
Now my question is: So HOW do I embed that text into an image (like an emoticon) in the first place? Because obviously the emoticon has something more than a regular image.
|
|
|
|
|
Do you mean when you type " " and it replaces it with an image? Just parse the text then replace the substring " " with ""
|
|
|
|
|
Thanks but that's the problem i encountered. See, when a text is replaced with an image, the text is "lost". So say I have the string "Smile :p and cry . I can exchange the text for pic fine. The problem is when i want to "copy" this string onto another window without losing the text part. In the example above, i can only copy the picture or the text but not both. So i wondered how messenger is able to retain the text part in the image. Does it store a copy of the original text string in the background? But with this approach what happens when you delete a picture? How would the original string know what word you deleted?
|
|
|
|
|
Hi,
can any one help me in findout how to set validation for double field in property grid.
eg.
[Description("vet contain x"),Category("Vet")]
public double X { get { return FX; } set { FX = value; } }
here how can i set the max value for 'FX' which is double.
|
|
|
|
|
|
Hi,
I have problem with reading from serial port.
Even though the port is connected and a thumb impression is given as input
my program couldnt read. It produces System.TimeOutexception in the line
of code where i read from port. I couldnt get any idea how to get rid
form that.
The following is my code.please guide me whati have to change to get
the output.
If serialPort.IsOpen Then
serialPort.Close()
End If
Try
With serialPort
.PortName = ComboBox1.Text
.BaudRate = 9600
.Parity = Parity.None
.DataBits = 8
.StopBits = StopBits.One
End With
serialPort.Open()
MsgBox("SELECTED PORT IS CONNECTED")
Dim bufferpic As Byte = CType(serialPort.ReadLine, Byte)
Dim MemstrmPic As New IO.MemoryStream(bufferpic)
Form1.PictureBox1.Image = Image.FromStream(MemstrmPic)
Catch ex As Exception
MsgBox(ex.ToString)
End Try
Thanks in advance
|
|
|
|
|
I can open an excel woorkbook and select the sheet that i want to work with. After i have populated the sheet with data from a web front end i wish to display all the new data in a table on a webpage. I know in what range the data is on the worksheet but im having trouble writing it to the table. Can anyone point me in a right direction please ??
some code ...
Excel._Worksheet objSheet;
Excel.Sheets objSheets;
public void PopulateTable() {
objSheets = (Microsoft.Office.Interop.Excel.Sheets)Session["ExcelSheets"];
objSheet = (_Worksheet)objSheets.get_Item(3); /// 3rd worksheet in the workbook
Range PrintQuoteRange = objSheet.get_Range("A1", "E68"); //data from cell A1:E1 to A68:E68
//// display rows, col and cells in a table
//// ?????
}
|
|
|
|
|
You're on the right way
With this range you may fill a multidimensional array and put it into a table.
Just use the .get_Value() method of the range object to retrieve this array.
<br />
string [,] mydata = PrintQuoteRange.get_Value(System.Type.Missing);<br />
Now you have the whole Data in the array. A simple for loop will do the rest
Tell me if you keep having trouble with getting the data into a table.
I had to do something similar just 2 weeks ago and found this article very useful:
How to automate Excel by using Visual C# to fill or to obtain data in a range by using arrays
ATTENTION: if you want to set a value of a cell to more than 911 characters, you will get a com exception. To work around this issue just use the querytable instead (have a look at the COM forumpost i made recently)
However, good luck with automating Excel
(Let me know if you are not able to kill the excel process properly - i just found a nice article to get rid of this too )
|
|
|
|