|
You can create windows of any size by handling the WM_GETMINMAXINFO[^] message.
What do you mean by the right hand side bar?
To scroll the window you will be able to click anywhere on the dialog and drag by handling the WM_NCHITTEST[^] message and returning HTCAPTION .
|
|
|
|
|
I do not know the proper term for the item that one can click on on the right hand side of the dialog to go to the next page.
For example, the "bar" gets dragged down by the mouse, and the page moves however many lines you actually drag the mouse. If I click below the "bar", then the next page is displayed.
Most often, this side bar appears on internet pages that consist of many pages.
Does this explanation help?
Thank you
|
|
|
|
|
|
It isnt usual (because unergonomic) to create windows that are larger than the target screen. Better work with tabs or make it somehow fit and resizable to screen.
I wrote an article about some of these issues:
Repositioning Windows on Multiple Monitor Systems[^]Press F1 for help or google it.
Greetings from Germany
|
|
|
|
|
Hello,
I have created an application which takes information entered via the GUI and puts this info into a file. I then wish to populate a .doc with this information.
Is anyone aware of a way to do this?
Thank you,
Mark
|
|
|
|
|
|
Hello,
I'm printing out doubles in c++, but not all the values have significant digits. Thus I'd like to accomplish the following using cout:
1.) If value is 90.00, then display it as 90 (no trailing zeros)
2.) If value is 99999999999999.0, then display it as 99999999999999 (not in scientific form)
3.) If value is 9.85545, then display it as 9.85545 (no precision loss)
Is there a combination of simultaneous ios flags that can be used with a single cout statement to accomplish the above 3 goals?
Thanks,
|
|
|
|
|
Use precision(streamsize) to set the max number of significant digits to show, and leave the format for the default/set it to the default if you have changed it.
|
|
|
|
|
Thanks for replying, but this suggestion will not prevent trailing zeros in the case of 90.00 unless I set the precision to zero, but then none of the floating point numbers would have any digits printed to the right of the decimal point.
For example, 9.85545 would no longer be printed as "9.88545" if precision is set to zero. And, if any precision is set other than zero, then integer values will show trailing zeros.
|
|
|
|
|
Wrong (I just tested). There are no trailing 0's with the default flags, and it will not use scientific as long as the number of digits does not exceed the value you set precision for. Default: showpoint unset, scientific unset, and fixed unset.
#include <iostream>
int main() {
std::cout.precision(14);
std::cout << 90.00 << std::endl;
std::cout << 99999999999999.0 << std::endl;
std::cout << 9.85545 << std::endl;
return 0;
}
The above code produces the output you desire.
To reset the appropriate flags to the default use the following:
std::cout.unsetf(ios::showpoint);
std::cout.unsetf(ios::scientific);
std::cout.unsetf(ios::fixed); modified on Thursday, March 4, 2010 10:23 PM
|
|
|
|
|
The reset part doesn't seem to work.
You can do this instead.
std::streamsize ss = std::cout.precision(14);
std::cout.precision(ss);
|
|
|
|
|
The reset is for the flags, not the precision. If they are at the default values, then two of the three problems he posted will be solved. Then once percision is set to a suitably large value, all three of his requirements will be met.
That my original suggestion did not work for him, I assume the flags have been changed somewhere as it works for me; therefore I included code on how to fix them to the correct values.modified on Thursday, March 4, 2010 10:54 PM
|
|
|
|
|
Gwenio,
I just tried your suggestion, and my output now looks exactly as you described. Thanks for your help!
|
|
|
|
|
Hi,
Just a quick question on how this conversion from local time to UTC / GMT works in the "gmtime" function. I created a tm object called m_timeinfo as you can see below. I adjusted the month from January to June but it keeps on printing the time as 14:00:00 no matter what month. I would expect that it would print 15:00:00 for January and the same for June. Have I missed a flag or something?
Thanks for any input.
<br />
tm m_timeinfo;<br />
m_timeinfo.tm_mday = 1;<br />
m_timeinfo.tm_mon = 2 - 1;
m_timeinfo.tm_year = 2010 - 1900;
m_timeinfo.tm_hour = 15;<br />
m_timeinfo.tm_min = 00;<br />
m_timeinfo.tm_sec = 00;<br />
<br />
<br />
tm * ptm = &m_timeinfo;<br />
<br />
<br />
time_t useme = mktime ( ptm );<br />
time_t * usemeptr = &useme;<br />
<br />
tm * result = gmtime ( usemeptr );<br />
<br />
std::cout << "year is " << result->tm_year + 1900 << std::endl;<br />
std::cout << "month is " << result->tm_mon + 1 << std::endl;<br />
std::cout << "day is " << result->tm_mday << std::endl;<br />
std::cout << "hour is " << result->tm_hour << std::endl;<br />
std::cout << "min is " << result->tm_min << std::endl;<br />
std::cout << "sec is " << result->tm_sec << std::endl;<br />
<br />
|
|
|
|
|
You need to correctly set the tm_isdst field - the daylight savings time option.
mktime, _mktime64[^]
|
|
|
|
|
|
I am figuring out how to present single chars from integer value, that can be only from 65-122(ASCII). I randomly get int value and now i would like to change that int to char, so lets say for int value 65 output would be 'A'. With itoa(int value, buffer, 10) where buffer is char*[30] i get result from buffer in numbers. What can be used to convert this?
Thanks
|
|
|
|
|
It could be:
int i(65);
char c = char(i);
...or even:
int i(65);
WCHAR wc = WCHAR(i);
Check your definition of Irrationality[ ^]
1 - Avicenna
5 - Hubbard
3 - Own definition
|
|
|
|
|
In addition to what Eugen said, you can do this -
char buffer[30];
sprintf_s(buffer, 30, "%c", int_value);
|
|
|
|
|
Casting would be the simple way of doing it.
In C, casting looks like this:
(char)x
In C++, you can do the above or use static_cast which is the preferred method:
static_cast<char>(x)
This is uglier and takes more text, but it is safer (more type checking at compile time) and it is good to make a habit of it.
Once you cast the int to a char, it will be treated as a char for all operations. Of course, it will be converted implicitly when assigning it to a char and casting will not be needed.modified on Thursday, March 4, 2010 10:51 PM
|
|
|
|
|
Hi
How can we LoadIcon form file#sanroop#
|
|
|
|
|
You could use the LoadImage[^] function Check your definition of Irrationality[ ^]
1 - Avicenna
5 - Hubbard
3 - Own definition
|
|
|
|
|
Not sure whether it's called like this. But here's what I intend to do is:
I have an application that embeds mozilla's gecko to display html with support for css and javascript. Inside the html, there maybe some hyperlinks or forms that needs to <b>dynamically</b> generate new html content. Instead of sending a request to a remote server to handle the request. I want to handle the request within the application. So I have to embed a local server in the application to do the job. Is it right or there's a better way? Are there such code project or some references for this kind of design?
Many thanks~
|
|
|
|
|
you should be able to intercept navigation events (link clicks, etc.). and when you get one of those events, just create and display your new content.
i'm not sure exactly how you do that with Gecko, but it's trivially easy with IE.
|
|
|
|
|
Thanks for the suggestion. I used 'webconnect', a third party library fo wxWidgets, which harnesses Gecko to render the contents. I'll check its document or code to see if it's possible to intercept the click or submit events.
Actually, I thought of embedding a IE browser engine, which can use the ActiveX control in javascript to execute external 'exe'(kind of as cgi) to generate new content. But that would make most of the work writting javascript for possible links. So I wonder if there's a way to combine the client and server together. Thus I only need to make the click or submit links point to a localhost url to handle the request locally.
|
|
|
|