🎯 [GUIDE] Metin2 Client'in Ekranın Ortasında Açılmasını Sağlamak

  • Konuyu açan Konuyu açan theay
  • Açılış Tarihi Açılış Tarihi
  • Yanıt Yanıt 1
  • Gösterim Gösterim 153

theay

mester2.tc
Premium Üye
MT Üye
Mesaj
243
Çözümler
17
Beğeni
78
Puan
484
Ticaret Puanı
0
Merhaba arkadaşlar,


Bu konuda sizlerle Metin2 istemcisinin (client) artık masaüstünün sol üst köşesinde değil, ekranın tam ortasında açılmasını nasıl sağlayacağınızı paylaşacağım. Özellikle çoklu monitör veya büyük ekran kullananlar için bu küçük ama etkili düzenleme oldukça faydalı olacaktır.

🛠️ Yapılacak İşlem:​


PythonApplication.cpp dosyasındaki pencere konumlandırma kodunu değiştiriyoruz.

Aşağıdaki if (Windowed) bloğunu bulun:
C++:
Genişlet Daralt Kopyala
if (Windowed)
{
    // ...
    SetPosition(-dropshadowSize, (m_pySystem.GetHeight() >= 1000) ? -titlebarSize : 0);
}

✅ Yeni Kod:​

Eski bloğu silin ve yerine aşağıdaki kodu ekleyin:

C++:
Genişlet Daralt Kopyala
if (Windowed)
{
    m_isWindowed = true;

    RECT rcClient{}, rcWindow{};
    GetClientRect(&rcClient);
    GetWindowRect(&rcWindow);

    int windowWidth = rcClient.right - rcClient.left;
    int windowHeight = rcClient.bottom - rcClient.top;

    int borderX = (rcWindow.right - rcWindow.left) - windowWidth;
    int borderY = (rcWindow.bottom - rcWindow.top) - windowHeight;

    int screenWidth = GetSystemMetrics(SM_CXSCREEN);
    int screenHeight = GetSystemMetrics(SM_CYSCREEN);

    int posX = (screenWidth - windowWidth - borderX) / 2;
    int posY = (screenHeight - windowHeight - borderY) / 2;

    SetPosition(posX, posY);
}

🧪 Sonuç:​


Artık Metin2 client'iniz her başlatıldığında ekranın tam ortasında açılacaktır. Küçük ama güzel bir kullanıcı deneyimi iyileştirmesi!​
 
Geri
Üst