/ Forside / Teknologi / Udvikling / C/C++ / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
C/C++
#NavnPoint
BertelBra.. 2425
pmbruun 695
Master_of.. 501
jdjespers.. 500
kyllekylle 500
Bech_bb 500
scootergr.. 300
gibson 300
molokyle 287
10  strarup 270
Gruppe af "contols"
Fra : Thomas Lykkeberg


Dato : 29-09-03 16:42

Hej

Jeg sidder og roder lidt med WIN32 programmering på Windows2K. Jeg
laver en app. som har to klient vinduer, som jeg har registreret med
RegisterClassEx. Oven for hvert vindue har jeg en static med et par
combo bokse og et par knapper.

Mit spørgsmål er nu:
Er det den "rigtige måde" jeg har grebet det an på, hvis jeg vil have
muligheden for at flytte en gruppe af controls (2 combo + 2 buttons),
nu når jeg har lagt dem "oven på" en static, som jeg så flytter med?
Eller er der en anden, og smartere måde.

PS. Jeg har lidt probs. med at "fange" tryk'ene på de 2 button
controls. Jeg har pt. lavet en subclass'ing af min static, så jeg kan
fange BTN_CLICKED. Er der en "fræk" måde at få fat i dem på, uden at
skulle sub-class'e den static, som knapper er child's på?

Mvh
Thomas

 
 
Bertel Brander (29-09-2003)
Kommentar
Fra : Bertel Brander


Dato : 29-09-03 22:18

Thomas Lykkeberg wrote:

> Hej
>
> Jeg sidder og roder lidt med WIN32 programmering på Windows2K. Jeg
> laver en app. som har to klient vinduer, som jeg har registreret med
> RegisterClassEx. Oven for hvert vindue har jeg en static med et par
> combo bokse og et par knapper.
Jeg er ikke sikker på at jeg forstår, hvordan laver man en knap på en
static?
>
> Mit spørgsmål er nu:
> Er det den "rigtige måde" jeg har grebet det an på, hvis jeg vil have
> muligheden for at flytte en gruppe af controls (2 combo + 2 buttons),
> nu når jeg har lagt dem "oven på" en static, som jeg så flytter med?
> Eller er der en anden, og smartere måde.
Jeg ved ikke hvad der er den rigtige måde at gøre det på. Jeg ville nok
have valgt at lave det som:

1: To dialog box'e hvor klient vinduet er en del af dialog box'en

2: To dialog box'e med klient vinduerne ved siden af

3: To toolbar's (evt. docking control bar) med klient vinduerne ved
siden af.

4: Én stor dialog box.

Valget ville afhænge lidt af om du har 2*(klient-vindue + 2 knapper +
combobox) eller 2 klient-vinduer + 2*2 knapper + 2 combobox'e. Jeg er
normalt ikke så megt for at have kontroller (knapper, combo box'e) uden
for dialog box'e og tool-bars.

Jeg er ikke sikker på at jeg forstår hvad du mener med "muligheden for
at flytte en gruppe af controls"

/b


Thomas Lykkeberg (30-09-2003)
Kommentar
Fra : Thomas Lykkeberg


Dato : 30-09-03 17:55

On Mon, 29 Sep 2003 23:17:42 +0200, Bertel Brander
<bertel@post4.tele.dk> wrote:

>Jeg er ikke sikker på at jeg forstår hvad du mener med "muligheden for
>at flytte en gruppe af controls"
Hej Bertel

Jeg har postet et JPG af hvad jeg mener i dk.binaer. (MyApp.JPG)

Her har jeg lavet et screen dump af det jeg har "formået" indtil
videre.

/Thomas

Bertel Brander (30-09-2003)
Kommentar
Fra : Bertel Brander


Dato : 30-09-03 19:23

Thomas Lykkeberg wrote:
> On Mon, 29 Sep 2003 23:17:42 +0200, Bertel Brander
> <bertel@post4.tele.dk> wrote:
>
>
>>Jeg er ikke sikker på at jeg forstår hvad du mener med "muligheden for
>>at flytte en gruppe af controls"
>
> Hej Bertel
>
> Jeg har postet et JPG af hvad jeg mener i dk.binaer. (MyApp.JPG)
>
> Her har jeg lavet et screen dump af det jeg har "formået" indtil
> videre.
>

Du kan gøre det at du bruger det ledige område til højre for On-knappen
til at trække blælken op og ned. Så hvis brugeren trykker på det
område med musen og trækker op/ned vil bjælken flytte sig.

Du blver nok nød til at lave det hele selv, det kan i den forbindelse
være værd at se på følgende:

WM_LBUTTONDOWN, WM_LBUTTONUP, WM_MOUSEMOVE, WM_SETCURSOR (til at sætte
en cursor musen er over bjælken, for at idikere at man kan flytte den),
MoveWindow() og SetCapture()/ReleaseCapture().

Jeg forstår stadig ikke hvordan du har lavet bjælken.

/b


Thomas Lykkeberg (30-09-2003)
Kommentar
Fra : Thomas Lykkeberg


Dato : 30-09-03 20:03

On Tue, 30 Sep 2003 20:22:37 +0200, Bertel Brander
<bertel@post4.tele.dk> wrote:

>WM_LBUTTONDOWN, WM_LBUTTONUP, WM_MOUSEMOVE, WM_SETCURSOR (til at sætte
>en cursor musen er over bjælken, for at idikere at man kan flytte den),
>MoveWindow() og SetCapture()/ReleaseCapture().
God ide, det vil jeg forfølge

>Jeg forstår stadig ikke hvordan du har lavet bjælken.
Det er blot "Main" vinduets klient område som kan ses. De 2 hvide
områder er klient vinduer, lagt "oven på" main vinduet. Der er i den
forbindelse gjordt plads til combobox og knapper. Det jeg så gerne vil
er at placerer combobox+knapper i et klient vindue, og flytte med det
(samlet) istedet for at skulle flytte hver enkelt komponent, i forhold
til main vinduet.

/Thomas

Bertel Brander (30-09-2003)
Kommentar
Fra : Bertel Brander


Dato : 30-09-03 21:54

Thomas Lykkeberg wrote:
> Det jeg så gerne vil
> er at placerer combobox+knapper i et klient vindue, og flytte med det
> (samlet) istedet for at skulle flytte hver enkelt komponent, i forhold
> til main vinduet.

For at kunne det skal du lave to vinduer der hver indeholder: knapper,
comboboxe og et klient vindue.
Det letteste er at lave disse to vinduer som dialog boxe, og placere
knapper, klient vinduer og comboboxe på dialog boxene.
Du skal nok lege lidt med dialog boxenes style's for at få det til at
se rigtigt ud (f.ex fjerne caption boxen).

/b


Søg
Reklame
Statistik
Spørgsmål : 177580
Tips : 31968
Nyheder : 719565
Indlæg : 6409081
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste