|
BTW, this post highlights a problem with Code Project's message forum. It seems everything between open and close pointed brackets (including the brackets themselves) get removed when a message gets posted
So, what should be #include [vector] (substitute square brackets for pointed ones), looks like this: #include <vector>
|
|
|
|
|
That's because < and > characters have special meaning in HTML. You must use "character entity references" to enter any special characters: < for < and > for > So, to display
#include <vector> you need to type
#include <vector>
|
|
|
|
|
Here's a quick one, how do one reset the EOF flag for an open file (i am using ifstream), I've tried doing OR's with the flags to no avail. Help!
Cheers
|
|
|
|
|
Please clarify what do you want : do you want to move a file pointer to the begin of file?
Best regards,
-----------
Igor Soukhov (Brainbench/Tekmetrics ID:50759)
igor_soukhov@yahoo.com | ICQ:57404554 | http://siv.da.ru
|
|
|
|
|
Exactly what I want to do! Basically I want to read the same file twice. After the first read produces EOF, I want to go back to the start of the file. This does not work because the EOF flag is on. Is there a way to reset this flag. My temporary solution is to close the file after the first read, then re-open for teh second read.
Thanks
|
|
|
|
|
file.clear() clears all flags, then you should be able to use file.seekg(0, std::ios::beg) to seek back to start.
|
|
|
|
|
I have searched the forums and the question appears to have been asked many times, but never really answered, so I'll try again.
I have a CDialog-derived class, within which I need to scroll a portion of the dialog's contents. My particular case is that the dialog box size has to be fixed because of a low screen resolution on the target PC, but the contents are variable so a number of controls are added dynamically at run-time.
I have placed a vertical scrollbar control on the dialog resource, but I am having trouble making everything work together to allow the controls to be scrolled up and down without affecting the remaing area of the dialog (which contains OK and Cancel buttons in a fixed position).
Presumably I need to override OnVScroll, but what needs to go in it?
|
|
|
|
|
I'd use sub-dialogs with DS_CONTROL style bit set. If you only want to scroll a portion of main dialog, use two sub-dialogs. One would have scrollbar, the other (containing controls like edits, chkboxes etc.) would be scrolled.
Tomasz Sowinski -- http://www.shooltz.com.pl
|
|
|
|
|
Any chance of a sample app. I'm not quite sure what you mean?
Is the sub-dialog placed on the main dialog like a control, presumably with normal scroll facilities and all of the required controls?
|
|
|
|
|
First, try to create subdialog without any scrolling. It will help to understand how the DS_CONTROL style works.
1) in main dialog insert the *static* control in place where you want the subdialog. Ensure it has an unique ID. The control will be replaced by subdialog at runtime. That's because you can't use Dialog Editor to draw a subdialog.
2) create new dialog template without title bar. On 'Styles' tab select 'Child' from 'Style' list and set border to 'None'. On 'More styles' tab check 'visible' and 'control'. Add some edits, checkboxes, etc.
3) create the MFC class for the subdialog - CSubdialogWithContents, for example. Add the following member function:
BOOL CSubdialogWithContents::Create(CWnd* pParent, UINT nTemplate, UINT nStatic)
{
if (CDialog::Create(nTemplate, pParent))
{
CWnd *pWnd=pParent->GetDlgItem(nStatic);
SetWindowPos(pWnd, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE);
CRect rc;
pWnd->GetWindowRect(&rc);
pParent->ScreenToClient(&rc);
pWnd->DestroyWindow();
MoveWindow(&rc);
::SetWindowLong(*this, GWL_ID, nStatic);
return TRUE;
}
return FALSE;
}
4) make a CSubdialogWithContents variable a data member of your main dialog class. In CMainDialog::OnInitDialog, call CSubdialogWithContents::Create (after CDialog::OnInitDialog).
If everything works OK, you should see your subdialog as a part of the main dialog. Subdialog controls should be visible, and tab key should work without any problems.
To implement a scrollable subdialog, place it in another subdialog with a vert scrollbar. CSubdialogWithContents will be a child window of subdialog with scroll - its contents will be clipped by parent. All you have to do is call CSubdialogWithContents::MoveWindow in response to CSubdialogWithScrollbar::OnVScroll.
Tomasz Sowinski -- http://www.shooltz.com.pl
|
|
|
|
|
Thanks for the help. I should get a chance to look at it within the next week. I'll let you know how I get on
|
|
|
|
|
That was really an excellent example. Great job
Ganesh Ramaswamy
|
|
|
|
|
Cool! And also about the most bizarre UI I've ever heard of. Nothing worse than a computer illiterate user group who are also too cheap to upgrade their hardware. Now everyone is going to want sliding dialogs within dialogs!
|
|
|
|
|
It's not that they're too cheap to upgrade their hardware, it's just that the operating environment does not allow for a large monitor and so the only usable screen resolution is 640x480.
|
|
|
|
|
Hi all,
I have Editbox in my program ...
I want to update scrollbar in Editbox in each adding text into editbox ...
For example:
If my Text lines in EditBox was 200 lines, then my scrollbar must update in last position of scroll bar ...
And must show last line of text automatically ...
I wrote some code with SetScrollRange and SetScrollPos, but my code won't work ...
Please help me ...
My month article: Game programming by DirectX by Lan Mader.
Please visit in: www.geocities.com/hadi_rezaie/index.html
Hadi Rezaie
|
|
|
|
|
Hi I think if you are using MFC you can simpy use the function LineScroll
with a number greater that the required and you will automatically scroll
to the last line.
But if you are not using MFC, you can try
the following
mesg
::SendMessage(m_hWnd, EM_LINESCROLL, nChars, nLines);
use the nChars as zero and the nLines as a great number as possible
Kumar
|
|
|
|
|
Thank you for your helps ...
My month article: Game programming by DirectX by Lan Mader.
Please visit in: www.geocities.com/hadi_rezaie/index.html
Hadi Rezaie
|
|
|
|
|
Here is one method to append text and updating the scrollbar. Suppose you have a CEdit named m_wndText:
int nSel = m_wndText.GetWindowTextLength();
m_wndText.SetSel(nSel, nSel, TRUE);
m_wndText.ReplaceSel("Add this text");
nSel = m_wndText.GetWindowTextLength();
m_wndText.SetSel(nSel, nSel);
This is usually faster than getting the text with GetWindowText(), appending a string and then updating the entire textbox with SetWindowText().
--------------
"Criticism is often constructive because it makes you feel superior when you give it"
-- Dogbert
|
|
|
|
|
Hi,
I have to create a application that works almost like a SlideShow that is available in WindowsMe ( in Pictures Folder ), except that I have to kept the pictures in exe so no one can copy it in addition I also want to disable the ( PrintScreen ) & ( Alt+Print Screen ) to disable capturing of the pictures.
So the target picture in full screen with a Next, Previous, First & Last & Exit buttons in a corner of a screen. I can put the Images in the Resource tab & then call them using the Image Control. Am I going the right way.
Any help according to this is appreciated.
Adeel Shamsi
adeelj@iname.com
|
|
|
|
|
Hi try to look into Global Hooks,
which can trap windows keyinput.
Like for ex you might have seen CBT
and CB-Training programs, which do not seen to repond
to the standard windows keyinput also.
You can get a Global Hook and trap the keyinput and
not forward the mesgs.
kumar
|
|
|
|
|
And what about the app, which stays in memory, and every 5 secs gets active window and make copy of its dc to bmp and to file on disk? No user interaction - but works. I think that there is no way to totally block such possibility.
Do not put images (in bmp/gif/iff/jpeg/... format into the resource, cause many application (for example MsDev) can easily read resources from executable. Open exe as resource, and then export what just You want.
To workaround above problem, You must compress/encrypt or in other way alter images. Do not use commonly known algos, like zip and rar.
Hope this helps
|
|
|
|
|
I am currently experiencing problems with the rich edit control and
RTF text in piece of software I've written.
I have a Rich Edit View, using version 1 of the Rich Edit Control, for
display various pieces of RTF text. The text is edited via a dialog.
Running under Windows 95, Windows 98, Windows Me and Windows NT 4.0 I
have experienced no problems. However under Windows 2000 the RTF text
becomes corrupt when displayed. The text in the edit dialog is OK. It
seems that the font definitions in the display are being switched
round in 2000. For example,
in everything else f0 may be Arial, f1 roman, f2 symbol. But under
2000, it switches the number used for symbol, so I end up with
something like this - f0 Arial, f1 symbol, f2 roman. This causes the
text to be displayed wrong.
As far as I can see I have 4 options:
1. Use a newer version of the Rich Edit Control, but this might have
unwanted side effects on the other platforms.
2. Release a special Windows 2000 version of the software.
3. Write some kind of parser that will reset all the fonts every time.
4. Abandon RTF and use an HTML view control, but this would require
major rewrites.
Any help would be appreciated.
Thanks,
Andrew Sage
|
|
|
|
|
where i can see i have installed (windows and) msdev packs?
-about-box search failed
-add/remove search failed
thanks for reply
t!
|
|
|
|
|
Try using GetVersionEx to obtain Windows Service Pack number.
|
|
|
|
|
Hello,
I would like to know how to assign "Ctrl + tab" to change pages in my Tab Ctrl.
Thanks for help.
R.G
|
|
|
|