|
Iulian Serban wrote:
(CilentRectangle.Width/WholeWidth)
This is likely to yield 0 unless the WholeWidth is less than ClientRectangle.Width because you are performing integer division. The correct way is to convert the three values to floats, then convert back to an int to assign to the LargeChange property.
hScrollBar.LargeChange = (int) ((float) hScrollbar.Maximum) * (
((float) ClientRectangle.Width) / ((float) WholeWidth)
); HTH,
James
"I despise the city and much prefer being where a traffic jam means a line-up at McDonald's"
Me when telling a friend why I wouldn't want to live with him
|
|
|
|
|
Hi James,
Yes I know I have to do those conversions but if I had put them all in my post nobody would even consider looking at the formula there . I debugged the code and it returnes the proportion I want but it`s not the corect formula to set to the LargeChange.
Thanks for replying,
Iulian
|
|
|
|
|
Ok, now that I think about it the code you posted won't do what you want.
Instead you should just set LargeChange to ClientRectangle.Width, and set the Maximum to WholeWidth. The framework takes care of setting the gripper to a proportional size.
James
"I despise the city and much prefer being where a traffic jam means a line-up at McDonald's"
Me when telling a friend why I wouldn't want to live with him
|
|
|
|
|
Ok, I figured it out bu doing some testing using a scrollbar and setting the largechange to diferent values and I noticed this too.
Thanks for replying anyway,
Iulian
|
|
|
|
|
Anyone know how can i display muti line text in a Label? Using MFC CStatic, i used to use "\n" to indicate next line of text but somehow this doesn't work for Label.
Anyway out?
Weiye, Chen
When pursuing your dreams, don't forget to enjoy your life...
|
|
|
|
|
There are (at least) two methods.
- Open notepad.exe and type your caption including line breaks. Copy the text and paste into the text property of your control.
- Go into the code module for your form and find the
InitializeComponent() method (you know, the one that says: Do Not Modify on pains of excommunication or something). Find the place wherein the label code section is and modify the text property, inserting "/n" where appropriate. Don't worry, some modifications are acceptable; however, save often and make small changes to catch any that kill the designer's ability to figure out what is going on.
α.γεεκ Fortune passes everywhere. Duke Leto Atreides
|
|
|
|
|
char it = Convert.ToChar(10);
this.label1.Text = "test" + it + "testing";
that will do a multi line label
switch(twinsOnWay)
{
case ("twins on the way"):
MessageBox.Show("for mr and mrs dynamic","twins on the way");
break;
|
|
|
|
|
...yes...
Except one may use only one line:
this.label1.Text = "test\ntesting";
...with no extra variable.
α.γεεκ Fortune passes everywhere. Duke Leto Atreides
|
|
|
|
|
Thanks. I'll go try it out...
Weiye, Chen
When pursuing your dreams, don't forget to enjoy your life...
|
|
|
|
|
Hi there,
What's the best approach to convert a 32byte Char[] Unicode array to
a simple string?
char Name[0]
char Name[1]
char Name[2]
...
char Name[31]
thanks for your help,
stonee
|
|
|
|
|
System.Text.Encoding.Unicode.GetString()
<a TITLE="See my user info" href=http:
|
|
|
|
|
How about this:
string mystring = new string(Name);
just create a new instance of a string using constructor that accepts array as an argument.
|
|
|
|
|
sure, thanks for that!
stonee
|
|
|
|
|
I am building my wrapper classes for CheckBox, ComboBox, Text, Radio, and a couple of others that do not come to mind at the moment. The goal is a disabled control without disabling them. I would like to have them be in a dead state as far as input goes (mouse, keyboard or pasting view clipboard) without them having the appearance of disabled controls. Would be great if the user could select the controls to copy text from or things like that, but absolutely, no changing any data or state until I set a flag.
Basically, I want to lock the controls until a user selects an option to edit.
Anything thoughts?
I thought of overriding the OnGetFocus or OnEnter, but they do not cover every situation.
Rocky Moore <><
|
|
|
|
|
Override TextChanged, Clicked, MouseDown etc. or their properties: Text, etc.
May be it helps.
Hi,
AW
|
|
|
|
|
A.Wegierski wrote:
Override TextChanged, Clicked, MouseDown etc. or their properties: Text, etc.
May be it helps.
Yeah, I was trying to avoid that. Most the items don't even respond until it is too late. Figure I will have to block down in the message pump to avoid any changes.
Rocky Moore <><
|
|
|
|
|
You could try createing a user control from each of them. Inherit from say a textbox and then override the WndProc function. I think that all windows messages go through here. I used it with the toolbar user control I made. You can't override the OnPaint for the toolbar because .net doesn't call it, it is drawn by the OS. I handled the paint message and a couple others from there. It will let you consume the ones you want and pass through the unwanted ones.
|
|
|
|
|
Anyone got any reccomendations for help creation software to work alongside c# ? Cost is a major issue on this one .
Am I the only one forever playing catch up with technology , while all the juicy opportunites keep rolling by ?
|
|
|
|
|
|
NDoc is great for generating documentation that can also serve as help. Try it out, you can make your documentation look exactly the same as how MSDN .NET documentation looks.
To make this all work, you have to use so called XML comments in your code and then you compile your code, /doc switch must be used to generate xml file that NDoc will use. somefilename.xml is just a file that you choose. I have a short article about this at: http://vbxzone.tripod.com/dotnet/dotnet06032.html
check it out.
|
|
|
|
|
I have a stream that I want to change before I bind it to a
richtextbox.
I don't want to save the stream.
It seems that I have to save it other ways I cannot bind
it to the textbox.
Example :
//Read template Form
FileStream fsTemp = new FileStream
@"c:\..\TemplateLayout.rtf", FileMode.Open,
FileAccess.Read);
StreamReader srTemp = new StreamReader(fsTemp);
string strTemp = srTemp.ReadToEnd();
strTemp = Regex.Replace(strTemp, "Number", base.Number);
string strFileOut = @"c:\..\Layout.rtf" ;
FileStream FileOut = new FileStream(strFileOut,
FileMode.OpenOrCreate, FileAccess.Write);
StreamWriter w1 = new StreamWriter(FileOut);
w1.WriteLine(strTemp);
w1.Close();
base.TxT01.LoadFile
(@"c:\..\Layout.rtf",RichTextBoxStreamType.RichText);
How can I do the same thing without saving the stream?
Thanks,
x
.
|
|
|
|
|
Use a MemoryStream instead of a FileStream and load the STREAM directly into the RichTextBox
<a TITLE="See my user info" href=http:
|
|
|
|
|
Thanks Leppie.
Is it possible to have an example. I don't know how to do replacement in a memorystream neither how to bind this memeorystream to the richtextbox.
Thanks in advance,
x
|
|
|
|
|
Does anyone else think that the implementation of Windows.Forms has been compromised by the decision to continue to drive windows in a Single Threaded Apartment?
Does anyone know of a wrapper implementation that gives the seamless illusion that a window is 100% free threaded? I'm getting tired of calling Invoke(..) -- or having a refresh timer on a dialog to pull data off the back-end! There must be a better way!
Jade Burton
Programmer
|
|
|
|
|
You are not alone man. I haven't found an alternative either.
|
|
|
|