Wie kann ich das normale Loginfenster so positioneren, dass es am oberen Rand des Bildschirms "hängt"? o:
Class CWndLogin -> WndTitle.cppQuote:
Glaube WndField.cpp
Ahnung von Source, weil ich auch Flyff Dev bin ? Nein bin ich nicht also ^^ Ich wollte nur helfen ..Quote:
Class CWndLogin -> WndTitle.cpp
Wenn du soviel ahnung hast wie du immer meinst wüsstest du auch das es in der WndTitle.cpp ist.
Schau doch nach wo das Fenster definiert wurde..Quote:
Und welcher Eintrag definiert die Koordinaten? o:
Wenn du richtig gelesen würdest,dann würdest du sehen, dass er sagte, dass er es nicht 100%ig weiß, weil er kein Source-Dev ist. Aufmerksamen Usern hätte das schon im ersten Post auffallen können, wo er sagte, dass er sich nicht sicher sei.Quote:
Sieht man das du ahnung vom Source hast wenn du falsche Sachen von dir gibst die mit dem Source zu tun haben.
da drüber fügst du einfach das ein:Quote:
#ifdef __THROUGHPORTAL0810
if( g_Neuz.m_bThroughPortal )
{
CRect HanrectWindow = GetWindowRect( TRUE );
SetWndRect( CRect( HanrectWindow.left, HanrectWindow.top, HanrectWindow.right - 120, HanrectWindow.bottom - 115 ) );
CRect rectLayout = m_pWndRoot->GetLayoutRect();
Move( (int)( rectLayout.Width() / 2 - m_rectWindow.Width() / 2 ), (int)( rectLayout.Height() * 0.65 ) );
}
#endif // __THROUGHPORTAL0810
Hatte kb genau zu suchen wird aber so gehen.Quote:
Move( X WERT, Y WERT);
Quote:
Wie schlau die Community doch wieder ist, ich lese hier nur flame flame flame nichts anderes.
Wenn ihr keinen brauchbaren Informationen zum Thema habt lasst es einfach bleiben :facepalm:
WndTitle.cpp
suche:
da drüber fügst du einfach das ein:
Hatte kb genau zu suchen wird aber so gehen.
Denkst du ich mache ihm ein Schritt für Schritt Anleitung wie man das Fenster verschiebt? Den Ansatz habe ich ihm gegeben, und nicht wie Armageddon einen falschen Ansatz.Quote:
Class CWndLogin -> WndTitle.cpp
Wenn du schon meinst du bist der King, dann bitte richtig ...:facepalm:Quote:
Wie schlau die Community doch wieder ist, ich lese hier nur flame flame flame nichts anderes.
Wenn ihr keinen brauchbaren Informationen zum Thema habt lasst es einfach bleiben :facepalm:
WndTitle.cpp
suche:
da drüber fügst du einfach das ein:
Hatte kb genau zu suchen wird aber so gehen.
void CWndLogin::OnInitialUpdate()
{
CWndNeuz::OnInitialUpdate();
CRect rect = GetClientRect();
#ifdef __REG
m_wndRegist. Create( "Registration", 0, CRect( 0, 0, 100, 20 ), this, 1001 ); rect.OffsetRect( 120,0 );
#endif
CWndEdit* pAccount = (CWndEdit*) GetDlgItem( WIDC_ACCOUNT );
CWndEdit* pPassword = (CWndEdit*) GetDlgItem( WIDC_PASSWORD );
CWndButton* pSaveAccount = (CWndButton*) GetDlgItem( WIDC_CHECK1 );
if( ::GetLanguage() == LANG_FRE )
{
CWndStatic * pWndStatic2 = (CWndStatic*)GetDlgItem( WIDC_STATIC2 );
CRect rc = pWndStatic2->GetWndRect();
rc.right += 24;
pWndStatic2->SetWndRect( rc, TRUE );
CRect rc1 = pAccount->GetWndRect();
CRect rc2 = pPassword->GetWndRect();
rc1.left += 12;
rc1.right = rc2.right;
pAccount->SetWndRect( rc1, TRUE );
rc2.left += 12;
pPassword->SetWndRect( rc2, TRUE );
}
pAccount->EnableModeChange( FALSE );
pAccount->SetTabStop( TRUE );
pPassword->AddWndStyle( EBS_PASSWORD );
pPassword->SetTabStop( TRUE );
pPassword->EnableModeChange( FALSE );
CWndButton* pOk = (CWndButton*)GetDlgItem( WIDC_OK );
CWndButton* pQuit = (CWndButton*)GetDlgItem( WIDC_QUIT );
pOk->SetDefault( TRUE );
pAccount->SetString( g_Option.m_szAccount );
pSaveAccount->SetCheck( g_Option.m_bSaveAccount );
if( g_Option.m_szAccount[ 0 ] )
pPassword->SetFocus();
else
pAccount->SetFocus();
MoveParentCenter();
/* if( ::GetLanguage() != LANG_KOR )
{
#ifdef __FOR_PROLOGUE_UPDATE
CWndButton* pCredit = (CWndButton*)GetDlgItem( WIDC_CREDIT );
pCredit->EnableWindow(FALSE);
pCredit->SetVisible(FALSE);
#else //__FOR_PROLOGUE_UPDATE*/
CWndButton* pAbout = (CWndButton*)GetDlgItem( WIDC_ABOUT );
pAbout->EnableWindow(FALSE);
pAbout->SetVisible(FALSE);
CWndButton* pCredit = (CWndButton*)GetDlgItem( WIDC_CREDIT );
pCredit->EnableWindow(FALSE);
pCredit->SetVisible(FALSE);
CWndButton* pPrologue = (CWndButton*)GetDlgItem( WIDC_PROLOGUE );
pPrologue->EnableWindow(FALSE);
pPrologue->SetVisible(FALSE);
// pOk->Move( 72, 105 );
//pQuit->Move( 72, 135 );
/*#endif //__FOR_PROLOGUE_UPDATE
}*/
#ifdef __THROUGHPORTAL0810
if( g_Neuz.m_bThroughPortal )
{
CRect HanrectWindow = GetWindowRect( TRUE );
SetWndRect( CRect( HanrectWindow.left, HanrectWindow.top, HanrectWindow.right - 120, HanrectWindow.bottom - 115 ) );
CRect rectLayout = m_pWndRoot->GetLayoutRect();
Move( (int)( rectLayout.Width() / 2 - m_rectWindow.Width() / 2 ), (int)( rectLayout.Height() * 0.65 ) );
}
#endif // __THROUGHPORTAL0810
if( ::GetLanguage() == LANG_KOR )
{
CWndButton* pPrologue = (CWndButton*)GetDlgItem( WIDC_PROLOGUE );
pPrologue->SetVisible(FALSE);
}
switch( ::GetLanguage() )
{
case LANG_KOR:
case LANG_FRE:
case LANG_GER:
{
CRect rectRoot = m_pWndRoot->GetLayoutRect();
CRect rectWindow = GetWindowRect( TRUE );
rectWindow.top = 400 * rectRoot.Height() / 768;
Move( rectWindow.TopLeft() );
break;
}
}
#ifdef __THROUGHPORTAL0810
if( g_Neuz.m_bThroughPortal )
#else // __THROUGHPORTAL0810
if( g_Neuz.m_bHanGame )
#endif // __THROUGHPORTAL0810
{
CWndStatic* pStatic = (CWndStatic*)GetDlgItem( WIDC_STATIC3 );
pStatic->SetVisible( FALSE );
pStatic = (CWndStatic*)GetDlgItem( WIDC_STATIC2 );
pStatic->SetVisible( FALSE );
CWndEdit* pEdit = (CWndEdit*)GetDlgItem( WIDC_ACCOUNT );
pEdit->SetVisible( FALSE );
pEdit->Move( 800, 800 );
pEdit = (CWndEdit*)GetDlgItem( WIDC_PASSWORD );
pEdit->SetVisible( FALSE );
pEdit->Move( 800, 800 );
CWndButton* pButton = (CWndButton*) GetDlgItem( WIDC_CHECK1 );
pButton->SetVisible( FALSE );
pButton = (CWndButton*) GetDlgItem( WIDC_OK );
CRect rectButton = pButton->GetWndRect();
//pButton->Move( 13, 10 );
pButton = (CWndButton*) GetDlgItem( WIDC_ABOUT );
//pButton->Move( 13, 35 );
pButton = (CWndButton*) GetDlgItem( WIDC_CREDIT );
//pButton->Move( 13, 60 );
pButton = (CWndButton*) GetDlgItem( WIDC_PROLOGUE );
//pButton->Move( 13, 60 );
pButton = (CWndButton*) GetDlgItem( WIDC_QUIT );
//pButton->Move( 13, 85 );
}
g_Neuz.m_dwTimeOutDis = 0xffffffff;
m_bDisconnect = FALSE;
}
MoveParentCenter();
Move(m_pWndRoot.left + (m_pWndRoot.Width() / 2) - (m_rectWindow.Width() / 2),0);
Wow MoveParentCenter(); setzt etwas mittig das habe ich nicht gewusst. :awesome:Quote:
Wenn du schon meinst du bist der King, dann bitte richtig ...:facepalm:
Natürlich geht das so wie du es da tust, aber anscheind weißt du nicht wieso es mittig ist
Da drinne findest duCode:void CWndLogin::OnInitialUpdate() { CWndNeuz::OnInitialUpdate(); CRect rect = GetClientRect(); #ifdef __REG m_wndRegist. Create( "Registration", 0, CRect( 0, 0, 100, 20 ), this, 1001 ); rect.OffsetRect( 120,0 ); #endif CWndEdit* pAccount = (CWndEdit*) GetDlgItem( WIDC_ACCOUNT ); CWndEdit* pPassword = (CWndEdit*) GetDlgItem( WIDC_PASSWORD ); CWndButton* pSaveAccount = (CWndButton*) GetDlgItem( WIDC_CHECK1 ); if( ::GetLanguage() == LANG_FRE ) { CWndStatic * pWndStatic2 = (CWndStatic*)GetDlgItem( WIDC_STATIC2 ); CRect rc = pWndStatic2->GetWndRect(); rc.right += 24; pWndStatic2->SetWndRect( rc, TRUE ); CRect rc1 = pAccount->GetWndRect(); CRect rc2 = pPassword->GetWndRect(); rc1.left += 12; rc1.right = rc2.right; pAccount->SetWndRect( rc1, TRUE ); rc2.left += 12; pPassword->SetWndRect( rc2, TRUE ); } pAccount->EnableModeChange( FALSE ); pAccount->SetTabStop( TRUE ); pPassword->AddWndStyle( EBS_PASSWORD ); pPassword->SetTabStop( TRUE ); pPassword->EnableModeChange( FALSE ); CWndButton* pOk = (CWndButton*)GetDlgItem( WIDC_OK ); CWndButton* pQuit = (CWndButton*)GetDlgItem( WIDC_QUIT ); pOk->SetDefault( TRUE ); pAccount->SetString( g_Option.m_szAccount ); pSaveAccount->SetCheck( g_Option.m_bSaveAccount ); if( g_Option.m_szAccount[ 0 ] ) pPassword->SetFocus(); else pAccount->SetFocus(); MoveParentCenter(); /* if( ::GetLanguage() != LANG_KOR ) { #ifdef __FOR_PROLOGUE_UPDATE CWndButton* pCredit = (CWndButton*)GetDlgItem( WIDC_CREDIT ); pCredit->EnableWindow(FALSE); pCredit->SetVisible(FALSE); #else //__FOR_PROLOGUE_UPDATE*/ CWndButton* pAbout = (CWndButton*)GetDlgItem( WIDC_ABOUT ); pAbout->EnableWindow(FALSE); pAbout->SetVisible(FALSE); CWndButton* pCredit = (CWndButton*)GetDlgItem( WIDC_CREDIT ); pCredit->EnableWindow(FALSE); pCredit->SetVisible(FALSE); CWndButton* pPrologue = (CWndButton*)GetDlgItem( WIDC_PROLOGUE ); pPrologue->EnableWindow(FALSE); pPrologue->SetVisible(FALSE); // pOk->Move( 72, 105 ); //pQuit->Move( 72, 135 ); /*#endif //__FOR_PROLOGUE_UPDATE }*/ #ifdef __THROUGHPORTAL0810 if( g_Neuz.m_bThroughPortal ) { CRect HanrectWindow = GetWindowRect( TRUE ); SetWndRect( CRect( HanrectWindow.left, HanrectWindow.top, HanrectWindow.right - 120, HanrectWindow.bottom - 115 ) ); CRect rectLayout = m_pWndRoot->GetLayoutRect(); Move( (int)( rectLayout.Width() / 2 - m_rectWindow.Width() / 2 ), (int)( rectLayout.Height() * 0.65 ) ); } #endif // __THROUGHPORTAL0810 if( ::GetLanguage() == LANG_KOR ) { CWndButton* pPrologue = (CWndButton*)GetDlgItem( WIDC_PROLOGUE ); pPrologue->SetVisible(FALSE); } switch( ::GetLanguage() ) { case LANG_KOR: case LANG_FRE: case LANG_GER: { CRect rectRoot = m_pWndRoot->GetLayoutRect(); CRect rectWindow = GetWindowRect( TRUE ); rectWindow.top = 400 * rectRoot.Height() / 768; Move( rectWindow.TopLeft() ); break; } } #ifdef __THROUGHPORTAL0810 if( g_Neuz.m_bThroughPortal ) #else // __THROUGHPORTAL0810 if( g_Neuz.m_bHanGame ) #endif // __THROUGHPORTAL0810 { CWndStatic* pStatic = (CWndStatic*)GetDlgItem( WIDC_STATIC3 ); pStatic->SetVisible( FALSE ); pStatic = (CWndStatic*)GetDlgItem( WIDC_STATIC2 ); pStatic->SetVisible( FALSE ); CWndEdit* pEdit = (CWndEdit*)GetDlgItem( WIDC_ACCOUNT ); pEdit->SetVisible( FALSE ); pEdit->Move( 800, 800 ); pEdit = (CWndEdit*)GetDlgItem( WIDC_PASSWORD ); pEdit->SetVisible( FALSE ); pEdit->Move( 800, 800 ); CWndButton* pButton = (CWndButton*) GetDlgItem( WIDC_CHECK1 ); pButton->SetVisible( FALSE ); pButton = (CWndButton*) GetDlgItem( WIDC_OK ); CRect rectButton = pButton->GetWndRect(); //pButton->Move( 13, 10 ); pButton = (CWndButton*) GetDlgItem( WIDC_ABOUT ); //pButton->Move( 13, 35 ); pButton = (CWndButton*) GetDlgItem( WIDC_CREDIT ); //pButton->Move( 13, 60 ); pButton = (CWndButton*) GetDlgItem( WIDC_PROLOGUE ); //pButton->Move( 13, 60 ); pButton = (CWndButton*) GetDlgItem( WIDC_QUIT ); //pButton->Move( 13, 85 ); } g_Neuz.m_dwTimeOutDis = 0xffffffff; m_bDisconnect = FALSE; }
Das setzt dein Fenster mittig.Code:MoveParentCenter();
Also ersetz das
MoveParentCenter();
durch
Code:Move(m_pWndRoot.left + (m_pWndRoot.Width() / 2) - (m_rectWindow.Width() / 2),0);
Das setzt es an den Top mittig.
Das kam stark so rüber.Quote:
Wow MoveParentCenter(); setzt etwas mittig das habe ich nicht gewusst. :awesome:
Vielleicht kannst du mir auch zeigen wo ich definiert habe das ich der King bin? Glaub da ist mir wohl was entfallen. Warum soll ich hier auch den kompletten Code durchlesen wenn es auch so geht. :facepalm: