Français
Forum

ReBar Fragen/Probleme

 

Georg
Hovenbitzer
allô zusammen,

cela Wetter wird dehors schlechter et déjà sitzt on plus am calculateur et versucht la fois wieder quoi trop Programmieren.
mais comme so ist plonger direct qui Probleme et Fragen sur et je hoffe vous pouvez mir aider.

qui Anhängende Code erstellt un Rebar avec einer liste sur qui linken page et einem weiteren ReBar sur qui rechten.
Im zweiten est sich dessus une List et unten un Static champ worauf deux Listen gesetzt sommes.

Folgende Fragen habe je eh bien:
comment ermittle je, si à droite unten dans einem qui beiden Listen un Eintrag ausgewählt wird si cet la fenêtre sur dem Static erzeugt wurden?
si je cet beiden la fenêtre sur dem ReBar2 erstelle viens je zwar à den ausgewählten Eintrag, mais avec dem Neuzeichnen des la fenêtre klappt es pas plus, comment bekomme je si cet hin?
chez dem ersten ReBar avec qui vertical Trennung wird qui Mauszeiger trop einem flèche avec deux Spitzen si on sur ihm steht, chez qui wagenrechten Trennung geschieht ca pas, peux on ca changement?
Gibt es une autre, peut-être bessere Solution so une Unterteilung darzustellen?

Viele Grüße
Georg
 $H windows.ph
 $H messages.ph
 $H commctrl.ph
Cls
Titre de la fenêtre "RedBar"
Fenêtre 0,0-1024,768
Struct ReBar = 	Size&,				\
Mask&,		\
Style&,		\
clrFore&,	\
clrBack&,	\
lpText&,		\
cch&,		\
iImage&,		\
hwndChild&,	\
cxMinChild&,	\
cyMinChild&,	\
cx&,			\
hbmBack&,	\
wID&,		\
cyChild&,	\
cyMaxChild&,	\
cyIntegral&,	\
cxIdeal&,		\
lParam&,	\
cxHeader&
Déclarer ReBar#
Faible ReBar#,ReBar
Claire ReBar#
Var ReBar1& = @Contrôle("ReBarWindow32",»,(~WS_CHILD | ~WS_VISIBLE | ~CCS_NORESIZE | ~WS_BORDER | ~WS_CLIPCHILDREN | ~WS_CLIPSIBLINGS | ~RBS_VARHEIGHT | ~RBS_AUTOSIZE),2,2,800,700,%hWnd,200,%hInstance,0)
Var lb1&    = @Créer(ListBox,ReBar1&,0,0,0,0,0)
Var ReBar2& = @Contrôle("ReBarWindow32",»,(~WS_CHILD | ~WS_VISIBLE | ~CCS_NORESIZE | ~CCS_VERT | ~WS_BORDER | ~WS_CLIPCHILDREN | ~WS_CLIPSIBLINGS | ~RBS_VARHEIGHT | ~RBS_AUTOSIZE),0,0,400,350,%hwnd,200,%hInstance,0)
Var lb2& = Créer(ListBox,ReBar2&,0,0,0,0,0)
'la fenêtre liegen sur dem Static champ
'Var lb3& = Créer("Text",ReBar2&,»,0,0,0,0)
'Var lb4& = Créer(ListBox,lb3&,0,10,10,100,50)
'Var lb5& = Créer(ListBox,lb3&,0,50,150,70,100)
'la fenêtre liegen sur dem ReBar&
Var lb3& = Créer("Text",ReBar2&,»,0,0,0,0)
Var lb4& = Créer(ListBox,ReBar2&,0,10,520,100,50)
Var lb5& = Créer(ListBox,ReBar2&,0,150,550,70,100)

With ReBar#

    .Size& =		@SizeOf(ReBar#)
    .Mask& =	(~RBBIM_CHILD | ~RBBIM_CHILDSIZE | ~RBBIM_SIZE | ~RBBIM_STYLE | ~RBBIM_IDEALSIZE | ~RBBIM_ID | ~RBBIM_TEXT)
    .Style& =		~RBBS_NOGRIPPER
    .clrFore& =	0
    .clrBack& =	0
    .lpText& =	0
    .cch& =		0
    .iImage& =	0
    .hwndChild& =	lb2&
    .cxMinChild& =	100
    .cyMinChild& =	700
    .cx& =			500
    .hbmBack& =		0
    .wID& =			0
    .cyChild& =		0
    .cyMaxChild& =	800
    .cyIntegral& =	        0
    .cxIdeal& =		0
    .lParam& =		0
    .cxHeader&	=	0
    @SendMessage(ReBar2&,~RB_INSERTBAND,0,ReBar#)
    .Style& =			~RBBS_GRIPPERALWAYS
    .clrFore& =		0
    .clrBack& =		0
    .lpText& =		0
    .cch& =			0
    .iImage& =		0
    .hwndChild& =	lb3&
    .cxMinChild& =	 100
    .cyMinChild& =	700
    .cx& =			200
    .hbmBack& =		0
    .wID& =			0
    .cyChild& =		@Width(ReBar2&)
    .cyMaxChild& =	800
    .cyIntegral& =	0
    .cxIdeal& =		0
    .lParam& =		0
    .cxHeader&	=	0
    @SendMessage(ReBar2&,~RB_INSERTBAND,1,ReBar#)

EndWith

Claire ReBar#

With ReBar#

    .Size& =		@SizeOf(ReBar#)
    .Mask& =	(~RBBIM_CHILD | ~RBBIM_CHILDSIZE | ~RBBIM_SIZE | ~RBBIM_STYLE | ~RBBIM_IDEALSIZE | ~RBBIM_ID | ~RBBIM_TEXT)
    .Style& =		~RBBS_NOGRIPPER
    .clrFore& =		0
    .clrBack& =		0
    .lpText& =		0
    .cch& =			0
    .iImage& =		0
    .hwndChild& =	lb1&
    .cxMinChild& =	80
    .cyMinChild& =	0
    .cx& =			800
    .hbmBack& =		0
    .wID& =			0
    .cyChild& =		@Height(ReBar1&)
    .cyMaxChild& =	@Height(ReBar1&)
    .cyIntegral& =	0
    .cxIdeal& =		0
    .lParam& =		0
    .cxHeader&	=	0
    @SendMessage(ReBar1&,~RB_INSERTBAND,0,ReBar#)
    .Style& =			~RBBS_GRIPPERALWAYS
    .clrFore& =		0
    .clrBack& =		0
    .lpText& =		0
    .cch& =			0
    .iImage& =		0
    .hwndChild& =	ReBar2&
    .cxMinChild& =	100
    .cyMinChild& =	@Height(ReBar1&) - 6
    .cx& =			800
    .hbmBack& =		0
    .wID& =			0
    .cyChild& =		@Height(ReBar1&)
    .cyMaxChild& =	@Height(ReBar1&)
    .cyIntegral& =	0
    .cxIdeal& =		0
    .lParam& =		0
    .cxHeader&	=	0
    @SendMessage(ReBar1&,~RB_INSERTBAND,1,ReBar#)

EndWith

ClearList
AddFonts
MoveListToHandle(lb1&)
MoveListToHandle(lb2&)
MoveListToHandle(lb4&)
MoveListToHandle(lb5&)

whilenot IsKey(27)

    waitinput

    Si @Clicked(lb1&)

        Localiser 2,105
        Imprimer @GetString$(lb1&,@GetCurSel(lb1&))

    ElseIf @Clicked(lb2&)

        Localiser 4,105
        Imprimer @GetString$(lb2&,@GetCurSel(lb2&))

    ElseIf @Clicked(lb4&)

        Localiser 6,105
        Imprimer @GetString$(lb4&,@GetCurSel(lb4&))

    ElseIf @Clicked(lb5&)

        Localiser 8,105
        Imprimer @GetString$(lb5&,@GetCurSel(lb5&))

    EndIf

Endwhile

@DestroyWindow(ReBar1&)
@DestroyWindow(ReBar2&)
Dispose ReBar#
Fin
 
Viele Grüsse, Georg Hovenbitzer(Windows XP Pro, XProfan 11.2, Profan2Cpp 1.6a)
05.12.2011  
 




Uwe
''Pascal''
Niemeier
Hi Georg!


comment ermittle je, si à droite unten dans einem qui beiden Listen un Eintrag ausgewählt wird si cet la fenêtre sur dem Static erzeugt wurden?


je verwende dans so einem le cas (plusieurs Elemente dans einem ruban) une rahmenlosen Dialog, den je dem ruban zuteile:
var dlg&=control("Dialog","dlg",$50000000,0,0,100,100,%hwnd,1,0)
Aussi peut/devrait alle Elemente, qui dem Rebar direct  unterstellt sommes, comme Parent cela Hauptfenster avons.


si je cet beiden la fenêtre sur dem ReBar2 erstelle viens je zwar à den ausgewählten Eintrag, mais avec dem Neuzeichnen des la fenêtre klappt es pas plus, comment bekomme je si cet hin?


chez ReBars sous Profan gibt es erhebliche Probleme avec dem Neuzeichnen, aussi pour Messageboxen, Menüs u.Ä. (Wahrscheinlich, weil cela ReBar qui Reihenfolge qui Elemente, durcheinanderbringt et qui ensuite pas plus avec qui Profan-internen übereinstimmt). Mir hilft là chez besoin un ~RedrawWindow(%hwnd,0,0,$485)

chez dem ersten ReBar avec qui vertical Trennung wird qui Mauszeiger trop einem flèche avec deux Spitzen si on sur ihm steht, chez qui wagenrechten Trennung geschieht ca pas, peux on ca changement?


Habe cela la fois per SubClassing gelöst, allerdings manuel (sur ProcAddr/SetWindowLong), weil's dans Profan encore aucun SubClassProc donnais. Dabei wurde une Notify-Message des ReBars abgefangen et qui Mauszeiger gezielt gesetzt. Müßte je chez besoin la fois raussuchen et nacharbeiten.

HTH
Pascal
 
09.12.2011  
 



répondre


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

3.139 Views

Untitledvor 0 min.
Jörg Sellmeyer16.06.2020
ByteAttack25.11.2015
Andreas Koch14.09.2015
Peter Max Müller22.09.2014
plus...

Themeninformationen



Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie