|
Hi,
i have a CButton with the property "Visible false", which is the method for set visible this button???
Thanks
Regards
Raiz ;P
|
|
|
|
|
Either add WS_VISIBLE style by using ModifyStyle ,
ModifyStyle(WS_VISIBLE,0);should be ModifyStyle(0,WS_VISIBLE);</
or use ShowWindow(SW_SHOW);
-- modified at 7:36 Monday 12th March, 2007
|
|
|
|
|
Ing.Raiz82 wrote: have a CButton with the property "Visible false", which is the method for set visible this button???
ShowWindow()!
|
|
|
|
|
You can set visible to True on the property window of button
|
|
|
|
|
Thanks...
i'm stupid...ehhehehe
bye...
|
|
|
|
|
good idea....ehhehehe
raiz
|
|
|
|
|
|
Hi
All
I want to change font of menu item of my application only in VC++6.0. When i change font of menu from control pannel then it change all menu fonts of OS. But i want to chnage the font of only myaplicatuion, how it can be done, please help me about this.
Regards
Atul Mahajan
|
|
|
|
|
M. Atul wrote:
Hi
All
I want to change font of menu item of my application only in VC++6.0. When i change font of menu from control pannel then it change all menu fonts of OS. But i want to chnage the font of only myaplicatuion, how it can be done, please help me about this.
Owner drawn menu!
http://www.codeproject.com/menu/[^]
|
|
|
|
|
Hi all,
I would like to know what is the maximum size of character buffer.
At the moment I have the following:
#define BUFFER_SIZE 4096
Can it be any bigger ?
Many Thanx
Regards,
The only programmers that are better than C programmers are those who code in 1's and 0's.....
Programm3r My Blog: ^_^
|
|
|
|
|
Programm3r wrote: I would like to know what is the maximum size of character buffer.
you mean, the maximum amount of characters the system can allocate to you ?
all depends of the system, and i'm not sure this can be retrieved like that...
|
|
|
|
|
toxcct wrote: you mean, the maximum amount of characters the system can allocate to you ?
Yes, for example;
char test[MAX_BUF_SIZE];
toxcct wrote: and i'm not sure this can be retrieved like that
How would you do it?
Thanx for the reply toxcct
Regards,
The only programmers that are better than C programmers are those who code in 1's and 0's.....
Programm3r My Blog: ^_^
|
|
|
|
|
i'm not sure at all this can be done, at least, not statically.
you should use new , and allocate a smaller amount of memory if it cannot allocate what you asked it to.
|
|
|
|
|
Thanx for your input toxcct, i'll give it a shot.
Regards,
The only programmers that are better than C programmers are those who code in 1's and 0's.....
Programm3r My Blog: ^_^
|
|
|
|
|
Actually he should use a ‘vector’ and avoid using ‘new’ if at all possible.
INTP
"Program testing can be used to show the presence of bugs, but never to show their absence."Edsger Dijkstra
|
|
|
|
|
Programm3r wrote: char test[MAX_BUF_SIZE]; // Max amount of character ??
you can have your buffer size like this
#define MY_MAX_BUF_SIZE 9192
|
|
|
|
|
|
Programm3r wrote: char test[MAX_BUF_SIZE]; // Max amount of character ??.
The maximum amount will be governed by the program's stack size, which defaults to 1MB.
"Approved Workmen Are Not Ashamed" - 2 Timothy 2:15
"Judge not by the eye but by the heart." - Native American Proverb
|
|
|
|
|
Programm3r wrote: Can it be any bigger ?
The short answer is yes!
Now for the long answer! (Which is still a short answer).
It depends on the amount of memory available at the time. When we where programming for 16-bit processors the limit was 65536 (unless you threw in a compiler specific modifier), but if you where not allocating the buffer from the heap, you would have to increase the size of the program stack to accommodate it.
When working with memory the size can vary depending on many things, my best recommendation is to use the STL ‘vector’ template. The vector template is just a dynamic buffer (or array); meaning that you do not need to know the number of items you are going to store ahead of time. If you do know the number of items (elements) then you can set it to that size, so that it will not have to look for another continuous memory block latter.
If for some reason you need a ridiculous buffer size (like 3GB or more) then you will have to turn to the Windows specific functions dealing with virtual memory. Virtual memory is limited to all available memory, including the amount of space left on your hard drive.
When ever possible use the STL containers and avoid using ‘new’ when you need to store more than one item. This will simplify your code and in the long run save you a lot of head aches.
I will end this by saying that many courses taught today center around managed memory (.Net), which compounds a problem I use to think was just in their heads. That is people failing to realize that if you take something (allocate memory) you have to return it or it will not be available latter when you need it. A ‘vector’ like most STL containers solves the same problem, if you use a ‘vector’ then you do not need to remember to ‘delete’ the memory you allocated using ‘new’, because it will be done automatically when the ‘vector’ goes out of scope.
INTP
"Program testing can be used to show the presence of bugs, but never to show their absence."Edsger Dijkstra
|
|
|
|
|
John, thank you very much, that helps alot.
The only programmers that are better than C programmers are those who code in 1's and 0's.....
Programm3r My Blog: ^_^
|
|
|
|
|
Programm3r wrote: The only programmers that are better than C programmers are those who code in 1's and 0's
Funny you should mention that because that is where I started! I mean that literally, as the only programming I was ever taught by any one was at the machine level (below assembly). A good C programmer can look at the code and see the assembly code lying just under the surface, but that is still one level above machine code. I will always like C, but I prefer C++ because it allows you to express your ideas in a much fuller way, with less work. If anyone ever tells you that they can do something in C++ that you can not do in C, tell them to go suck a rotten egg. If it can not be done in C then it can not be done period.
INTP
"Program testing can be used to show the presence of bugs, but never to show their absence."Edsger Dijkstra
|
|
|
|
|
John R. Shaw wrote: tell them to go suck a rotten egg
LMAO ...
The only programmers that are better than C programmers are those who code in 1's and 0's.....
Programm3r My Blog: ^_^
|
|
|
|
|
John R. Shaw wrote: If anyone ever tells you that they can do something in C++ that you can not do in C, tell them to go suck a rotten egg.
Are you sure about this, I can agree with you that one can write any program in C if its written in C++, but aren't there some features in C++ which can't be simulated in C ?
I know that one can simulate polymorphisme in C, its hard, its hard coded for that matter but still doable. But I don't know if everything is possible?
codito ergo sum
|
|
|
|
|
Well I used to do public and private (private being hidden entirely), but I could not see how to do protected. Hard-coding inheritance is not really worth the effort, but is doable.
There are other ways to simulate other features of C++ in C, but they are all a pain.
Think about this: The original front end for C++ converted the C++ code into C and then passed the C files to a C compiler and linker.
I think, Bjarne Stroustrup first proposed using macros for creating templates instead of a separate mechanism. This was something I had done in the passed (in C) and is very doable.
I do not know if the majority of OSs are still written in C, but I suspect they still are.
None of the above really matters though; the point was that any application that is written in C++ can be written in C. It is just harder to do, because nothing is hidden (normally) and you have to be more careful (be more responsible). On the plus side, when you make a function call in C you know it, which cuts down on surprises.
INTP
"Program testing can be used to show the presence of bugs, but never to show their absence."Edsger Dijkstra
|
|
|
|
|
The maximum size of a character buffer is what your software specifications specify! If your application needs a buffer to handle 10 bytes of data, there is no need to allocate 2KB of memory. The maximum size that you can allocate depends on the type of memory management being used.
[Stack]
In Win32, your stack starts at 1MB, so depending on how your code works and where it is being called, you may be able to allocate much of that on the stack. Grabbing 32KB from the stack is generally nothing unless you are dealing with recursive functions.
[RTL Memory Management]
Allocating from the standard RTL heap imposes other limits, and these limits may be platform-specific. For example on Win9x, you can only allocate a bit less than 256MB using the RTL allocation routines (this is a limitation of HeapAlloc(...) on Win9x).
[Win32 Memory Management]
You can manage larger amounts of memory using things like VirtualAlloc(...) , or using a memory-mapped file. You can also run into address space exaustion when dealing with really large amounts of memory, but this is soemthing the average developer does not experience - at least, not unless they have a serious bug somewhere...
The important thing to ask is how much memory do you need? Some developers will scoff when they see something that they believe to be arbitrary buffer sizes of 32, 64, 128, 256, etc., but these limits are specified by the requirements of the software. If your program needs a Username , and the specifications state that Username shall be limited to 31 characters, a character buffer size of 32 is perfectly fine.
Peace!
-=- James Please rate this message - let me know if I helped or not!<HR> If you think it costs a lot to do it right, just wait until you find out how much it costs to do it wrong! Avoid driving a vehicle taller than you and remember that Professional Driver on Closed Course does not mean your Dumb Ass on a Public Road! See DeleteFXPFiles
|
|
|
|