Toon posts:

[Delphi/Win32] border in control

Pagina: 1
Acties:

Verwijderd

Topicstarter
ik ben bezig met het maken van een control voor delphi (erft van TCustomControl), en ik probeer mijn control nu een border te geven zoals editboxes normaal hebben.. ik heb vanalles geprobeerd, verschillende styles en exstyles in CreateParams() enzo, maar ik kom er niet uit..

weet iemand hoe ik dit kan doen?

bij voorbaat dank,
Theodoor

  • LordLarry
  • Registratie: Juli 2001
  • Niet online

LordLarry

Aut disce aut discede

WS_EX_STATICEDGE geloof ik, maar dan moet je wel een TWinControl hebben.

TCustomControl en TControl zijn visuele componenten zonder window. Daar moet je ze zelf tekenen op de canvas in je geoverride Paint methode. Ze krijgen dus ook nooit focus, houd je daar wel rekening mee?

We adore chaos because we like to restore order - M.C. Escher


  • johnwoo
  • Registratie: Oktober 1999
  • Laatst online: 10:02

johnwoo

3S-GTE

LordLarry schreef op 09 oktober 2002 @ 12:05:
WS_EX_STATICEDGE geloof ik, maar dan moet je wel een TWinControl hebben.

TCustomControl en TControl zijn visuele componenten zonder window. Daar moet je ze zelf tekenen op de canvas in je geoverride Paint methode. Ze krijgen dus ook nooit focus, houd je daar wel rekening mee?
WS_EX_CLIENTEDGE gebruik ik altijd voor randjes...

4200Wp ZO + 840Wp ZW + 1680Wp NW | 14xIQ7+ + 1xDS3-L | MTVenusE | HWP1


Verwijderd

Topicstarter
LordLarry schreef op 09 oktober 2002 @ 12:05:
WS_EX_STATICEDGE geloof ik, maar dan moet je wel een TWinControl hebben.

TCustomControl en TControl zijn visuele componenten zonder window. Daar moet je ze zelf tekenen op de canvas in je geoverride Paint methode. Ze krijgen dus ook nooit focus, houd je daar wel rekening mee?
TCustomControl is wel windowed hoor, da's een subclass van TWinControl... TGraphicControl is wat jij bedoelt waarschijnlijk

maareuh WS_EX_STATICEDGE is een heel dun randje, en ik heb zo'n diepe nodig als in een TMemo

  • LordLarry
  • Registratie: Juli 2001
  • Niet online

LordLarry

Aut disce aut discede

Inderdaad...ben helemaal in de war :) Tis ook een beetje rare naam...normaal komen TCustomXXX dingen altijd als ouder van TXXX, maar in dit geval niet.

Ander heb ik geen idee behalve zelf tekenen....

We adore chaos because we like to restore order - M.C. Escher


  • curry684
  • Registratie: Juni 2000
  • Laatst online: 13-08 16:46

curry684

left part of the evil twins

Kijk gewoon eens in de VCL sourcecode, die is meegeinstalleerd :)

Professionele website nodig?


  • LordLarry
  • Registratie: Juli 2001
  • Niet online

LordLarry

Aut disce aut discede

Inderdaad, maar ik neem aan dat de topic starter daar algekeken had WS_BORDER zoals te zien bij TEdit werkt niet?

We adore chaos because we like to restore order - M.C. Escher


  • Tomatoman
  • Registratie: November 2000
  • Laatst online: 08:59

Tomatoman

Fulltime prutser

Je moet de procedure CreateParams overriden en daar de border style instellen. Zie de help files.

Een goede grap mag vrienden kosten.


Verwijderd

Topicstarter
LordLarry schreef op 09 oktober 2002 @ 16:13:
Inderdaad, maar ik neem aan dat de topic starter daar algekeken had WS_BORDER zoals te zien bij TEdit werkt niet?
nope daardoor was ik ook in de war geraakt... want daar keek ik eerst :) en gisteravond keek ik in de source van TCustomPanel, en daar stond juist dat die WS_BORDER bit uit moest staan (echt specifiek uitzetten na de inherited, dat had ik dus waarschijnlijk nog niet geprobeerd), en die WS_EX_CLIENTEDGE aan... en DAT werkt wel :)

Verwijderd

Topicstarter
tomatoman schreef op 11 oktober 2002 @ 03:28:
Je moet de procedure CreateParams overriden en daar de border style instellen. Zie de help files.
yep daar had ik dus al vanalles geprobeerd, maar ik moet zeggen dat ik niet echt veel heb gehad aan zowel de helpfiles van CreateWindowEx, en CreateWindow als van CreateParams :)
Pagina: 1