Tabs in a CRichEditCtr?
Jan Melander -- jan.melander@got.wmdata.se Thursday, February 27, 1997 Environment : NT 4.0, MSVC++ 4.1 Help! I have used a CRichEditCtrl to create a text editor view and I have tried to activate tab stops in the control, as default the tab key does nothing. I have used GetParaFormat to get the PARAFORMAT struct then I put some tab position in the rgxTabs array, the no. of tabs in cTabCount and add PFM_TABSTOPS to the dwMask. I then read the text into the ctrl, select all the text with SetSel(0, -1), and tries to set the new format with SetParaFormat. But the tab key still does nothing in the Ctrl... I have noticed that as default values I get 1 in the cTabCount and 720 in the first index of the rgxTabs array, what's up? I got a tip from David Elliot that the problem why the tab key don't work might not be connected with the paragraph format, any one got a clue here? Any help are appreciated! Cheers, --------------------------------------------------------------- Jan Melander WM-Data jan.melander@got.wmdata.se --------------------------------------------------------------- "Until the circle breaks and wisdom lies ahead, The faithful live Awake, the rest remain misled" Innocence Faded - Dream Theater
Mike Sargent -- msargent@entrust.com Tuesday, March 04, 1997 Tab settings in Rich Text edit controls are specified in twips. If you're not familiar with twips, the name is short for "twentieth of a point". There are 72.27 typographers pointers per inch. In the computer world we normally use just 72. So an inch contains 72*20 = 1440 twips. The 720 number mentioned means 1/2 inch, and 120 means 1/12 inch. A tabsize of 6 times 120 is 720, giving tab spacing every 1/2 inch. Mike >---------- >From: JCS@ficsgrp.com[SMTP:JCS@ficsgrp.com] >Sent: Monday, March 03, 1997 12:42 PM >To: mfc-l@netcom.com; jan.melander@got.wmdata.se >Subject: RE: Tabs in a CRichEditCtr? > > >Hi Jan, > >This topic puzzles me also. I currently implemented this as follows (and >works fine), but there must be an easier way. > >REMARK: this example is for a tabsize of 6. > >Jan Castermans >FICS Group, Belgium > > /* SET THE TABS */ > GetRichEditCtrl().HideSelection(TRUE,FALSE); > GetRichEditCtrl().SetSel(0,-1); > > PARAFORMAT pf; > > GetRichEditCtrl().GetParaFormat(pf); > > pf.cTabCount = MAX_TAB_STOPS; > > // I don't know what the meaning of this 120 is, but when I looked > // into the default setting for this rgxTabs it gave me the value > // 720 for a tabsize of 6 (and 720 divided by 6 is, yes, yes --> 120) > // Remark: the font is Courier New 10 > > CMyApp* theCurrentApp = (CMyApp*)AfxGetApp(); > > UINT TabSize = theCurrentApp->m_tabSize; > > for(SHORT tab_pos = 0; tab_pos < pf.cTabCount; tab_pos++ ) > { > pf.rgxTabs[tab_pos] = (120 * TabSize) * (tab_pos + 1); > } > > pf.dwMask|=PFM_TABSTOPS; > > GetRichEditCtrl().SetParaFormat(pf); > > GetRichEditCtrl().SetSel(0,0); > > GetRichEditCtrl().HideSelection(FALSE,FALSE); > > > ---------- >From: Jan Melander >Sent: donderdag 27 februari 1997 17:22 >To: MFC >Subject: Tabs in a CRichEditCtr? > >Environment : NT 4.0, MSVC++ 4.1 > >Help! > >I have used a CRichEditCtrl to create a text editor view and I have tried >to activate tab stops in the control, as default the tab key does >nothing. > >I have used GetParaFormat to get the PARAFORMAT struct then I put some >tab position in the rgxTabs array, the no. of tabs in cTabCount and add >PFM_TABSTOPS to the dwMask. > >I then read the text into the ctrl, select all the text with SetSel(0, > -1), and tries to set the new format with SetParaFormat. > >But the tab key still does nothing in the Ctrl... > >I have noticed that as default values I get 1 in the cTabCount and 720 in >the first index of the rgxTabs array, what's up? > >I got a tip from David Elliot that the problem why the tab key don't work > >might not be connected with the paragraph format, any one got a clue >here? > >Any help are appreciated! > >Cheers, > > > --------------------------------------------------------------- > Jan Melander > WM-Data > jan.melander@got.wmdata.se > --------------------------------------------------------------- >"Until the circle breaks and wisdom lies ahead, > The faithful live Awake, the rest remain misled" > Innocence Faded - Dream Theater > >
Become an MFC-L member | Вернуться в корень Архива |