[VC++] Positie button

Pagina: 1
Acties:

  • Klippy
  • Registratie: Oktober 2000
  • Laatst online: 22:10

Klippy

Still Game

Topicstarter
Ik begin pas met Visual C++, moet werken met versie 6.0, maar ik heb het volgende best vaak nodig, misschien is 't supersimpel, maar lukt me niet :(

Ik wil dus eigenlijk gewoon weten wat de positie van een button op het scherm is, soort screencoördinaat dus, net als de positie van een muiscursor.

Ben functie aan 't schrijven die die positie doorgeeft aan 'n functie die vervolgens de muiscursor daar langzaam heenbeweegt, bewegen lukt al, maar moet weten waarheen 't moet bewegen natuurlijk :)

Iemand een hint? Zal wel een Get....... zijn die omgezet wordt eventueel, maar vind niks in MSDN en Google.

thx.

Steam | SXQncyBhbGwgZ29vZCwgbWFuISDwn5iO


  • whoami
  • Registratie: December 2000
  • Laatst online: 23:04
Ik weet niet hoe het in VC++ zit, maar heeft een CButton daar ook gewoon geen data-members Top, Left, Width en Heigth, die je dan dmv memberfuncties of properties kunt uitlezen?

https://fgheysels.github.io/


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

curry684

left part of the evil twins

Zoek eens in MSDN naar GetWindowRect en ClientToScreen.

Professionele website nodig?


  • Pooh
  • Registratie: April 2001
  • Niet online

Pooh

Lees eens een boek

hint: void GetWindowRect( LPRECT lpRect ) const;

edit:
ben natuurlijk weer veel te laat

  • Klippy
  • Registratie: Oktober 2000
  • Laatst online: 22:10

Klippy

Still Game

Topicstarter
Hmmm, ik ga zo naar huis, kijk morgen wel verder, heb al ongeveer dit nu:

code:
1
2
3
4
5
6
CRect rectHelp; 

CWnd* pWnd = GetDlgItem(IDC_BUTTON);

pWnd->GetWindowRect(&rectHelp);
ScreenToClient(&rectHelp);


Maar wat zit dan precies in rectHelp?

4 punten van links, rechts, top en bottom begrijp ik uit MSDN?

Als dat zo is probeer ik morgen vrolijk verder, anders verbeter me maar aub ;)


edit:

Weet niet of dit klopt trouwens, ben nu thuis en las 't ff na, maar ben wat vergeten geloof ik :?



Edit2:
edit:

Ik ben eruit, thx ;)

[code]
CRect rect; //Veriabele om positie button op te slaan
CPoint MiddenButton; //CPoint variabele naar midden van button

knop->GetWindowRect(&rect); //Bepaal positie van button als CRect

MiddenButton = rect.CenterPoint(); //Bepaal midden van button als CPoint
[/code]

Waarbij ik een pointer naar CButton doorkrijg als parameter.

Voor als iemand het wil weten ;)

Steam | SXQncyBhbGwgZ29vZCwgbWFuISDwn5iO


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

curry684

left part of the evil twins

Met die code ben je echt nog niet klaar hoor, je mist dit puntje nog:
Ik wil dus eigenlijk gewoon weten wat de positie van een button op het scherm is, soort screencoördinaat dus, net als de positie van een muiscursor.
Dat punt dat je met die code van jou nu hebt achterhaald is relatief binnen het parent-window, en je hebt dus nog ClientToScreen nodig om die te converteren naar schermcoordinaten.

Professionele website nodig?


  • Klippy
  • Registratie: Oktober 2000
  • Laatst online: 22:10

Klippy

Still Game

Topicstarter
curry684 schreef op 04 september 2002 @ 12:08:
Met die code ben je echt nog niet klaar hoor, je mist dit puntje nog:

[...]

Dat punt dat je met die code van jou nu hebt achterhaald is relatief binnen het parent-window, en je hebt dus nog ClientToScreen nodig om die te converteren naar schermcoordinaten.
Ja had ik eerst ook, maar weer weggehaald voorlopig, moet nog studie doen naar schermresoluties, want moet op elke resolutie werken, laat 't nu ff zo, want dat wordt toch in een andere functie omgezet als het nodig is, daar bepaal ik ook de muispositie.

Toch bedankt :)

Steam | SXQncyBhbGwgZ29vZCwgbWFuISDwn5iO


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

curry684

left part of the evil twins

Wat hebben schermresoluties ermee van doen? :?

Professionele website nodig?


  • Klippy
  • Registratie: Oktober 2000
  • Laatst online: 22:10

Klippy

Still Game

Topicstarter
curry684 schreef op 04 september 2002 @ 13:26:
Wat hebben schermresoluties ermee van doen? :?
Nu nog niks :P

Maar straks zitten buttons op verscillende plaatsen, afhankelijk van resolutie wordt het scherm ingedeeld en opgebouwd, dus zit button misschien ergens anders.
Weet ook wel dat ik dan nog steeds moet omzetten, maar dat boeit nu ff niet, dat maak ik wel als ik die schermindelingen bouw, dat bedoel ik ;)

Voorlopig werkt 't iig :)

Maar weet jij misschien hoe ik m'n muis langzaam van 1 punt naar ander punt kan verplaatsen? Is daar toevallig standaardfunctie voor of moet ik echt (waar ik nu mee bezig ben) gewoon mbv een timer oid steeds de positie een klein stukje veranderen en dat 10x ofzo?

Steam | SXQncyBhbGwgZ29vZCwgbWFuISDwn5iO


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

curry684

left part of the evil twins

Worker threadje openen is iets handiger dan een timer, en dan idd gewoon 300 keer SetCursorPos aanroepen met een Sleep ertussen.

Professionele website nodig?


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

curry684

left part of the evil twins

Als je trouwens iets met macro recording en playback of iets vergelijkbaars bezig bent kun je beter even kijken bij SetWindowsHookEx onder het kopje WH_JOURNALPLAYBACK, die is daarvoor bedoeld.

Professionele website nodig?


  • Klippy
  • Registratie: Oktober 2000
  • Laatst online: 22:10

Klippy

Still Game

Topicstarter
Zal 't maar meteen helemaal uitleggen dan ;)

Ben demo apllicatie aan 't maken voor bestaande software, maar die komt dus wel in 'n nieuwe interface in die applicatie. Is software voor medische analyse van röntgenfoto's.

1 van de functies die het moet ondersteunen is het stap voor stap doorlopen van de analyse.

Nou had ik gedacht daarvoor een dialog te maken waarin op elke stap begonnen kan worden. Dan gaat je (of een) mousepointer (waar user op dat moment geen controle over heeft) naar de goeie button om aan te geven waar je moet klikken.
Ook moet je vaak op die foto klikken, dan gaat pointer daarheen en zet 'n puntje of tekent lijntje oid.

Maar dat heb ik ook pas bedacht, moet nog kijken of dat goede oplossing is en of (ik) 't kan uitvoeren.

Ben nu iig functie aan het maken die naam van een button meekrijgt en vervolgens daar de cursor heen beweegt, als ik dat al heb ben ik een heel eind.

Maar is veel werk geloof ik om uit te zoeken steeds hoe die pointer moet bewegen om ook nog precies goed uit te komen.

Maar zal wel lukken uiteindelijk denk ik :P

Steam | SXQncyBhbGwgZ29vZCwgbWFuISDwn5iO


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

curry684

left part of the evil twins

LiquidSilver schreef op 04 september 2002 @ 14:02:
Dan gaat je (of een) mousepointer (waar user op dat moment geen controle over heeft) naar de goeie button om aan te geven waar je moet klikken.
Tricky om de muispointer te disablen... (kan wel via omweg)
Ook moet je vaak op die foto klikken, dan gaat pointer daarheen en zet 'n puntje of tekent lijntje oid.
Eitje. :)
Ben nu iig functie aan het maken die naam van een button meekrijgt en vervolgens daar de cursor heen beweegt, als ik dat al heb ben ik een heel eind.
Maar is veel werk geloof ik om uit te zoeken steeds hoe die pointer moet bewegen om ook nog precies goed uit te komen.
Allemaal ook eitje :P Als het niet lukt geef maar een gil O-)

Professionele website nodig?


  • Klippy
  • Registratie: Oktober 2000
  • Laatst online: 22:10

Klippy

Still Game

Topicstarter
Ah thx ;)

Zal es kijken he :P
Bookmark dit topic maar :D

Heb voor nu nog 1 klein vraagje :P

Ik heb nu dus 4 punten, x en y van doel en x en y van startpunt.
Als ik die cursor in zeg 50 stappen wil moven moet ik dus uitrekenen hoeveel hij per stap moet verplaatst in x en y richting en dan of dat positief on negatief is (dus naar boven of naar onder, links of rechts).
Maar dat zijn geen constanten, want vaak is verschil in x groter dan dat van y, dus moet beweging per stap van x groter zijn dan die van y.

Is allemaal uit te rekenen wel, ben ik nu mee bezig, maar ik vroeg me af of het niet sneller kon, anders doe ik dat werk voor niks :P
Zag bijv. een DrawLine oid, die zet al een rechte lijn, als ik nou bijv de pointer over die lijn kan laten bewegen en afhankelijk van lengte daarvan dat in een aantal stappen kan doen zou simpeler zijn.

Kan daar eigenlijk niet veel van vinden, maar jij hebt wel ervaring geloof ik :)

Dus kan dat? Zo ja, kleine hint aub :P Zo nee, toch bedankt voor het lezen ;)

Alvast bedankt _/-\o_ , hierna zal ik er wel zelf uitkomen hoop ik ;)

Steam | SXQncyBhbGwgZ29vZCwgbWFuISDwn5iO


  • Pooh
  • Registratie: April 2001
  • Niet online

Pooh

Lees eens een boek

Je stappen zijn toch gewoon (Xeind-Xbegin)/50 en (Yeind-Ybegin)/50 :?
Je tijdelijke cursorposities zijn dan Xcurrent+Xstap , Ycurrent + Ystap (opletten dat je je stappen als floats definieerd, niet als integers, anders kom je nooit goed uit)

  • Klippy
  • Registratie: Oktober 2000
  • Laatst online: 22:10

Klippy

Still Game

Topicstarter
Poohbear schreef op 04 september 2002 @ 14:34:
Je stappen zijn toch gewoon (Xeind-Xbegin)/50 en (Yeind-Ybegin)/50 :?
Je tijdelijke cursorposities zijn dan Xcurrent+Xstap , Ycurrent + Ystap (opletten dat je je stappen als floats definieerd, niet als integers, anders kom je nooit goed uit)
Daar zit wat in ja :P

Ik ging uit van vaste stapgrootte ipv vast aantal stappen.

Maar ik kan met SetCursorPos geen float opgeven als punt, maar kan natuurlijk wel zorgen dat in 'n getal overheb dat deelbaar is door 50 en de rest in de 1e stap zetten.

Ik ga es proberen enzo :)

Steam | SXQncyBhbGwgZ29vZCwgbWFuISDwn5iO


  • Pooh
  • Registratie: April 2001
  • Niet online

Pooh

Lees eens een boek

LiquidSilver schreef op 04 september 2002 @ 14:40:
[...]


Daar zit wat in ja :P

Ik ging uit van vaste stapgrootte ipv vast aantal stappen.

Maar ik kan met SetCursorPos geen float opgeven als punt, maar kan natuurlijk wel zorgen dat in 'n getal overheb dat deelbaar is door 50 en de rest in de 1e stap zetten.

Ik ga es proberen enzo :)
:? Je begrijpt me niet helemaal. Je moet WEL een vaste stapgrootte gebruiken, anders gaat je cursor steeds langzamer, en kom je er uiteindelijk nooit aan.

Die floatjes converteer je gewoon in setcursorpos.

dus:
C++:
1
2
3
4
5
6
7
8
9
10
11
float Xcurr, Ycurr, Xstep, Ystep;

GetCursorPos(Xcurr,YCurr);
Xstep = (Xdoel-Xcurr)/50.;
Ystep = (Ydoel-Ycurr)/50.;

for (stapjes) {
     Xcurr += Xstep;
     YCurr += YStep;
     SetCursorPos((int)Xcurr, (int)Ycurr);
}


zoiets? :?

  • Klippy
  • Registratie: Oktober 2000
  • Laatst online: 22:10

Klippy

Still Game

Topicstarter
Poohbear schreef op 04 september 2002 @ 14:47:
[...]


:? Je begrijpt me niet helemaal. Je moet WEL een vaste stapgrootte gebruiken, anders gaat je cursor steeds langzamer, en kom je er uiteindelijk nooit aan.

Die floatjes converteer je gewoon in setcursorpos.

dus:
C++:
1
2
3
4
5
6
7
8
9
10
11
float Xcurr, Ycurr, Xstep, Ystep;

GetCursorPos(Xcurr,YCurr);
Xstep = (Xdoel-Xcurr)/50.;
Ystep = (Ydoel-Ycurr)/50.;

for (stapjes) {
     Xcurr += Xstep;
     YCurr += YStep;
     SetCursorPos((int)Xcurr, (int)Ycurr);
}


zoiets? :?
Ja sorry, zeker vaste stapgrootte :) Maar ik bedoelde altijd, dus voor elke button vaste grootte en dan variëren met het aantal. Net als nu altijd vast aantal stappen, maar variërende grootte afhankelijk van hoever de button is.

Maar thx, ik ben nog bezig dus, moet ook nog wat anders doen.

Steam | SXQncyBhbGwgZ29vZCwgbWFuISDwn5iO


  • Dash2in1
  • Registratie: November 2001
  • Laatst online: 31-08 22:49
Doet hij er zonder vaste stapgrootte, maar met vast aantal stappen niet ontzettend irritant lang over hele korte stukjes?

  • Klippy
  • Registratie: Oktober 2000
  • Laatst online: 22:10

Klippy

Still Game

Topicstarter
Dash2in1 schreef op 04 september 2002 @ 15:13:
Doet hij er zonder vaste stapgrootte, maar met vast aantal stappen niet ontzettend irritant lang over hele korte stukjes?
Geen idee, dat zoek ik nog uit, anders verander ik wel.

Denk 't wel meevalt.

Steam | SXQncyBhbGwgZ29vZCwgbWFuISDwn5iO


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

curry684

left part of the evil twins

C++:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include <math.h>

// Higher value causes faster move
const int     c_Speed = 6;

void MoveMouse(int p_Left, int p_Top)
{
POINT     l_StartingPoint;
int       l_Steps;
int       l_Horizontal;
int       l_Vertical;
int       l_Index;

// Retrieve current cursor position then calculate required steps
GetCursorPos(&l_StartingPoint);
l_Horizontal  = p_Left - l_StartingPoint.x;
l_Vertical    = p_Top - l_StartingPoint.y;
l_Steps       = sqrt(l_Horizontal * l_Horizontal + l_Vertical * l_Vertical) / c_Speed;

// Loop over all the steps required
for(l_Index = 1; l_Index <= l_Steps; l_Index++)
  {
  // Sleep then set cursor pos
  Sleep(1);
  SetCursorPos(l_StartingPoint.x + (l_Horizontal * l_Index) / l_Steps,
               l_StartingPoint.y + (l_Vertical * l_Index) / l_Steps);
  }
}

(ps. volgens mij is dit de eerste keer dat ik een stukje code voor GoT getest heb, dussuh ja hij werkt ;) )

Professionele website nodig?


  • Klippy
  • Registratie: Oktober 2000
  • Laatst online: 22:10

Klippy

Still Game

Topicstarter
curry684 schreef op 04 september 2002 @ 16:04:
C++:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include <math.h>

// Higher value causes faster move
const int     c_Speed = 6;

void MoveMouse(int p_Left, int p_Top)
{
POINT     l_StartingPoint;
int       l_Steps;
int       l_Horizontal;
int       l_Vertical;
int       l_Index;

// Retrieve current cursor position then calculate required steps
GetCursorPos(&l_StartingPoint);
l_Horizontal  = p_Left - l_StartingPoint.x;
l_Vertical    = p_Top - l_StartingPoint.y;
l_Steps       = sqrt(l_Horizontal * l_Horizontal + l_Vertical * l_Vertical) / c_Speed;

// Loop over all the steps required
for(l_Index = 1; l_Index <= l_Steps; l_Index++)
  {
  // Sleep then set cursor pos
  Sleep(1);
  SetCursorPos(l_StartingPoint.x + (l_Horizontal * l_Index) / l_Steps,
               l_StartingPoint.y + (l_Vertical * l_Index) / l_Steps);
  }
}

(ps. volgens mij is dit de eerste keer dat ik een stukje code voor GoT getest heb, dussuh ja hij werkt ;) )
Oei oei :D
_/-\o_ _/-\o_

Eigenlijk was ik net lekker op weg, maar kreeg het niet niet 100% goed, dus bedankt :)

Wortel is idd goed idee :)

:>

Steam | SXQncyBhbGwgZ29vZCwgbWFuISDwn5iO


  • Klippy
  • Registratie: Oktober 2000
  • Laatst online: 22:10

Klippy

Still Game

Topicstarter
Ik zie wel dat die mijn probleem erg makkelijk omzeilt :P

Je geeft hiet gewoon een top en een left target op, ik ging graag naar midden van button, maar omdat dat maar 1 punt is, moet je altijd precies uitkomen.

Maar dit pas ik wel beetje aan, dan komt 't wel goed :)

Dus vandaag heb ik de hele dag functies geschreven, een uur zitten rekenen en nu komt ff een veel simpelere oplossing ;)
Ik was echt veel te moelijk aan 't denken :)

edit:

Oooow ik ben dom, zie 't nu pas :P

Heb ik dus nu de oplossing van het idee dfat ik vanmorgen had.

Die Pythagoras had ik al, maar ik kwam dus niet op het idee om bij de SetCursorPos te vermenigvuldigen met het aantal gezette stappen |:( |:(

Maarja goed, ik heb 't uiteindelijk :)

Steam | SXQncyBhbGwgZ29vZCwgbWFuISDwn5iO


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

curry684

left part of the evil twins

LiquidSilver schreef op 04 september 2002 @ 16:27:
Je geeft hiet gewoon een top en een left target op, ik ging graag naar midden van button, maar omdat dat maar 1 punt is, moet je altijd precies uitkomen.
Uhm top en left zijn gewoon vaste termen voor X en Y, je mag daar ook het midden van je button instoppen hoor B)

Professionele website nodig?


  • hufkes
  • Registratie: Maart 2000
  • Laatst online: 26-08 18:43

hufkes

nee, daar staat niet hufter!

[mierennueken]

Ben bang dat het toch behoorlijk schokkerig zal gaan wanneer je langere afstanden moet overbruggen. Kun je volgens mij beter de sleep afhankelijk maken van de afstand en je aantal stapjes uitrekenen afhankelijk van je lengte. Dus zeg dat je zo'n 3 pixels per stapje af kan leggen zonder dat het lijkt alsof je vreselijke lag heb. Bovendien kun je dan altijd er vanuit gaan dat hij bijvoorbeeld in drie seconden op het juiste punt is.

Onderstaande signature is al >20jr oud ***hoe dan***
---
Het internet is een veelbelovend medium
....dat maar heel weinig van zijn beloftes nakomt.
Wat weg is... raak je nooit meer kwijt :P


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 21:01

.oisyn

Moderator Devschuur®

Demotivational Speaker

hufkes: moet je voor de grap eens een proggie maken die de muisbewegingen afvangt en daar een pixel neerzet, moet je eens kijken wat voor afstanden daar tussen zitten. Een muis beweegt nou eenmaal niet vloeiend, maar omdat het zo snel gaat zie je dat niet (en dus zul je ook geen last krijgen van lag)

Een goede methode voor het aantal stappen is trouwens max (dx, dy), waarbij dx en dy het verschil in resp. x en y richting is. Zo zal de muis altijd maar 1 pixel bewegen

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • hufkes
  • Registratie: Maart 2000
  • Laatst online: 26-08 18:43

hufkes

nee, daar staat niet hufter!

ok ok, ik zei toch ook al mierenneukmodus.. kan me alleen voorstellen dat wanneer je van de ene kant van het scherm naar de andere kant wilt en je deelt het altijd standaard in 50 stukkies op, dat het dan of heel schokkerig en op de kleine stukkies fucking traag gaat..

Ik denk verder dat het voor een demo belangrijker is dat het verschuiven een bepaald aantal seconden duurt zodat je "leerling" ook kan zien, volgen en begrijpen wat je doet.

Mijn muisje gaat ook niet met 1 pixel tegelijk trouwens, maar echt onregelmatige gaten vallen er ook niet in.

Onderstaande signature is al >20jr oud ***hoe dan***
---
Het internet is een veelbelovend medium
....dat maar heel weinig van zijn beloftes nakomt.
Wat weg is... raak je nooit meer kwijt :P


  • Klippy
  • Registratie: Oktober 2000
  • Laatst online: 22:10

Klippy

Still Game

Topicstarter
curry684 schreef op 05 september 2002 @ 02:34:
[...]

Uhm top en left zijn gewoon vaste termen voor X en Y, je mag daar ook het midden van je button instoppen hoor B)
Ja ik was er al achter 3 seconden nadat ik getypt had, moet ff wennen aan C++ na 1 jaar Delphi proggen :P
hufkes schreef op 05 september 2002 @ 05:18:
ok ok, ik zei toch ook al mierenneukmodus.. kan me alleen voorstellen dat wanneer je van de ene kant van het scherm naar de andere kant wilt en je deelt het altijd standaard in 50 stukkies op, dat het dan of heel schokkerig en op de kleine stukkies fucking traag gaat..

Ik denk verder dat het voor een demo belangrijker is dat het verschuiven een bepaald aantal seconden duurt zodat je "leerling" ook kan zien, volgen en begrijpen wat je doet.

Mijn muisje gaat ook niet met 1 pixel tegelijk trouwens, maar echt onregelmatige gaten vallen er ook niet in.
Gaat nu vrij goed moet ik zeggen en heb goede snelheid nu. Maar misschien met hogere resolutie moet hij verder gaan, dus denk dat dat wat schokkeriger is ja.

Ik laat 't gewoon ff zo, kan altijd nog aanpassen mocht het ndig zijn.

Vorige gasten die dit hebben geporbeerd te maken hadden een avi filmpje laten spelen met een nog veel schokkeriger muisje dat ging bewegen... Dus 't is iig al stukken beter nu :P

Steam | SXQncyBhbGwgZ29vZCwgbWFuISDwn5iO


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

curry684

left part of the evil twins

hufkes schreef op 05 september 2002 @ 05:18:
ok ok, ik zei toch ook al mierenneukmodus.. kan me alleen voorstellen dat wanneer je van de ene kant van het scherm naar de andere kant wilt en je deelt het altijd standaard in 50 stukkies op, dat het dan of heel schokkerig en op de kleine stukkies fucking traag gaat..

Ik denk verder dat het voor een demo belangrijker is dat het verschuiven een bepaald aantal seconden duurt zodat je "leerling" ook kan zien, volgen en begrijpen wat je doet.

Mijn muisje gaat ook niet met 1 pixel tegelijk trouwens, maar echt onregelmatige gaten vallen er ook niet in.
In die routine van mij gaat het juist niet met een exact aantal stappen, maar op basis van de feitelijke afstand (zie die pythagoras-berekening), wat vervolgens gedeeld wordt door de c_Speed modifier... hij gaat hier dus in het voorbeeld altijd 6 real pixels per stap.

Professionele website nodig?


  • Klippy
  • Registratie: Oktober 2000
  • Laatst online: 22:10

Klippy

Still Game

Topicstarter
Ik kick dit nog ff als 't mag :P

Heb net ff snel een deel van een functie gemaakt dat m'n componenten goed zet, maar krijg Assertion errors in 2 files.

Deze:

Afbeeldingslocatie: http://members.home.nl/s.klippert/Error.jpg

en 1 in Winocc.cpp line 279.

functie werkt, doet wat ik wil, als ik aanroep bij InitDlg, maar als ik 'm aanroep bij OnSize krijg ik die errors. Als ik Ignore doe 2x werkt het btw wel.

Probleemcode waar ergens fout zit:

C++:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
void CV1Dlg::SchermOpbouw()
{
    CRect WRect, CompRect;
    CPoint CompPos;     //Positie waar component komt als CPoint 
    
    int CompPosX,       //X coördinaat van positie waar component komt 
    CompPosY,       //Y coördinaat van positie waar component komt 
    CompPosW,       //Width van component 
    CompPosH;       //Height van component  
    

    GetClientRect(&WRect);          //Bepaal Rect van main window
    

    //TabControl positioneren    
    m_Tab1.GetWindowRect(&CompRect);    //Bepaal Rect van component
    
    CompPos = WRect.TopLeft();

    CompPosW = CompRect.Width();
    CompPosH = CompRect.Height();
    CompPosX = CompPos.x + WRect.Width() - CompPosW;
    CompPosY = 1;

    m_Tab1.MoveWindow(CompPosX, CompPosY, CompPosW, CompPosH, TRUE);


Code is beetje uitgebreid, maar moet meer componenten plaatsen dus daarom aparte variabelen, kan ik steeds zelfde code gebruiken.

Maar ik snap dus eigenlijk wat nu fout gaat :(

Steam | SXQncyBhbGwgZ29vZCwgbWFuISDwn5iO

Pagina: 1