Çözüldü Python Syserr

Bu konu çözüme ulaştırılmıştır. Çözüm için konuya yazılan tüm yorumları okumayı unutmayın. Eğer konudaki yorumlar sorununuzu çözmediyse yeni bir konu açabilirsiniz.
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.

melihalbayrak

Geliştirici
Geliştirici
Yardımsever Üye
Usta Üye
Mesaj
1.246
Çözümler
81
Beğeni
673
Puan
1.109
Karakter detay sisteminden sonra oluşan syserr. C tuşu ile açılan karakter penceresi açık bırakıp ışınlandığımda pencere yine ekranda kalıyor ve C tuşuyla tekrar pencereyi açmak istediğimden ikincisi açılıyor diğer pencerede kapanmıyor çarpıya tıklayınca bu syserrler düşüyor.

Sistem;
Linkleri görebilmek için giriş yap veya kayıt ol.



Syserr ilgili satırlar:
    def __ShowAlignmentToolTip(self):
        self.toolTipAlignment.ShowToolTip()

    def __HideAlignmentToolTip(self):
        self.toolTipAlignment.HideToolTip()

Kod:
0726 19:38:12825 :: CMapOutdoor::Load - LoadMonsterAreaInfo ERROR
0726 19:38:15800 :: icon/item/30319.tga 파일이 없습니다.CItemData::__SetIconImage
0726 19:38:35688 :: Traceback (most recent call last):

0726 19:38:35688 ::   File "ui.py", line 1179, in OnMouseOverIn

0726 19:38:35689 ::   File "ui.py", line 87, in __call__

0726 19:38:35689 ::   File "ui.py", line 69, in __call__

0726 19:38:35689 ::   File "uiCharacter.py", line 1133, in __ShowAlignmentToolTip

0726 19:38:35689 :: AttributeError
0726 19:38:35689 :: :
0726 19:38:35689 :: 'NoneType' object has no attribute 'ShowToolTip'
0726 19:38:35689 ::

0726 19:38:35736 :: Traceback (most recent call last):

0726 19:38:35743 ::   File "ui.py", line 1185, in OnMouseOverOut

0726 19:38:35743 ::   File "ui.py", line 87, in __call__

0726 19:38:35743 ::   File "ui.py", line 69, in __call__

0726 19:38:35743 ::   File "uiCharacter.py", line 1136, in __HideAlignmentToolTip

0726 19:38:35743 :: AttributeError
0726 19:38:35743 :: :
0726 19:38:35744 :: 'NoneType' object has no attribute 'HideToolTip'
0726 19:38:35744 ::

0726 19:38:36570 :: Traceback (most recent call last):

0726 19:38:36570 ::   File "ui.py", line 1465, in CallEvent

0726 19:38:36570 ::   File "ui.py", line 87, in __call__

0726 19:38:36570 ::   File "ui.py", line 69, in __call__

0726 19:38:36571 ::   File "uiCharacter.py", line 459, in Close

0726 19:38:36571 :: AttributeError
0726 19:38:36571 :: :
0726 19:38:36571 :: 'NoneType' object has no attribute 'Hide'
0726 19:38:36571 ::

0726 19:38:38904 :: Traceback (most recent call last):

0726 19:38:38904 ::   File "uiCharacter.py", line 822, in OnPressEscapeKey

0726 19:38:38904 ::   File "uiCharacter.py", line 459, in Close

0726 19:38:38904 :: AttributeError
0726 19:38:38904 :: :
0726 19:38:38904 :: 'NoneType' object has no attribute 'Hide'
0726 19:38:38904 ::
 
Çözüm
interfacemodule.py dosyasında def Close(self): içinde şunu bul:

Python:
        if self.wndChat:
            self.wndChat.Destroy()

Altına ekle:
Python:
        if self.wndCharacter:
            self.wndCharacter.Close()
        else:
            if self.wndCharacter:
                self.wndCharacter.Hide()

def HideAllWindows(self): fonksiyonu içinden şu kısmı bul:
Python:
        if self.wndCharacter:
            self.wndCharacter.Hide()

Değiştir:
Python:
        if self.wndCharacter:
            self.wndCharacter.Close()
        else:
            if self.wndCharacter:
                self.wndCharacter.Hide()

def ToggleCharacterWindow(self, state fonksiyonunu ara ve komple şu şekilde değiştirmeyi dene yada farklı olan kısımları al:
Python:
...
uicharacter.py de şu kısmı;

Python:
titleBarValue.SetCloseEvent(ui.__mem_func__(self.Close))

Şu şekilde değiştirmeyi dene:
Python:
titleBarValue.SetCloseEvent(ui.__mem_func__(self.Hide))
 
uicharacter.py de şu kısmı;

Python:
titleBarValue.SetCloseEvent(ui.__mem_func__(self.Close))

Şu şekilde değiştirmeyi dene:
Python:
titleBarValue.SetCloseEvent(ui.__mem_func__(self.Hide))
Evet close ve hide syserr çözüldü artık ışınlandıktan sonra kapatma yani çarpı butonu çalışıyor fakat bu syserr kaldı.

Kod:
0726 22:56:43679 :: CMapOutdoor::Load - LoadMonsterAreaInfo ERROR
0726 22:56:53813 :: Traceback (most recent call last):

0726 22:56:53813 ::   File "ui.py", line 1187, in OnMouseOverIn

0726 22:56:53813 ::   File "ui.py", line 87, in __call__

0726 22:56:53813 ::   File "ui.py", line 69, in __call__

0726 22:56:53814 ::   File "uiCharacter.py", line 1147, in __ShowAlignmentToolTip

0726 22:56:53814 :: AttributeError
0726 22:56:53814 :: :
0726 22:56:53814 :: 'NoneType' object has no attribute 'ShowToolTip'
0726 22:56:53814 ::

0726 22:56:53879 :: Traceback (most recent call last):

0726 22:56:53879 ::   File "ui.py", line 1193, in OnMouseOverOut

0726 22:56:53880 ::   File "ui.py", line 87, in __call__

0726 22:56:53883 ::   File "ui.py", line 69, in __call__

0726 22:56:53883 ::   File "uiCharacter.py", line 1150, in __HideAlignmentToolTip

0726 22:56:53883 :: AttributeError
0726 22:56:53884 :: :
0726 22:56:53884 :: 'NoneType' object has no attribute 'HideToolTip'
0726 22:56:53884 ::
 
interfacemodule.py dosyasında def Close(self): içinde şunu bul:

Python:
        if self.wndChat:
            self.wndChat.Destroy()

Altına ekle:
Python:
        if self.wndCharacter:
            self.wndCharacter.Close()
        else:
            if self.wndCharacter:
                self.wndCharacter.Hide()

def HideAllWindows(self): fonksiyonu içinden şu kısmı bul:
Python:
        if self.wndCharacter:
            self.wndCharacter.Hide()

Değiştir:
Python:
        if self.wndCharacter:
            self.wndCharacter.Close()
        else:
            if self.wndCharacter:
                self.wndCharacter.Hide()

def ToggleCharacterWindow(self, state fonksiyonunu ara ve komple şu şekilde değiştirmeyi dene yada farklı olan kısımları al:
Python:
    def ToggleCharacterWindow(self, state):
        if FALSE == player.IsObserverMode():
            if FALSE == self.wndCharacter.IsShow():
                self.OpenCharacterWindowWithState(state)
            else:
                if state == self.wndCharacter.GetState():
                    self.wndCharacter.OverOutItem()
                    self.wndCharacter.Close()
                else:
                    self.wndCharacter.SetState(state)
 
Çözüm
interfacemodule.py dosyasında def Close(self): içinde şunu bul:

Python:
        if self.wndChat:
            self.wndChat.Destroy()

Altına ekle:
Python:
        if self.wndCharacter:
            self.wndCharacter.Close()
        else:
            if self.wndCharacter:
                self.wndCharacter.Hide()

def HideAllWindows(self): fonksiyonu içinden şu kısmı bul:
Python:
        if self.wndCharacter:
            self.wndCharacter.Hide()

Değiştir:
Python:
        if self.wndCharacter:
            self.wndCharacter.Close()
        else:
            if self.wndCharacter:
                self.wndCharacter.Hide()

def ToggleCharacterWindow(self, state fonksiyonunu ara ve komple şu şekilde değiştirmeyi dene yada farklı olan kısımları al:
Python:
    def ToggleCharacterWindow(self, state):
        if FALSE == player.IsObserverMode():
            if FALSE == self.wndCharacter.IsShow():
                self.OpenCharacterWindowWithState(state)
            else:
                if state == self.wndCharacter.GetState():
                    self.wndCharacter.OverOutItem()
                    self.wndCharacter.Close()
                else:
                    self.wndCharacter.SetState(state)
Döktürüyorsunuz. :) Sadece bir kısımda eksik varmış diğer kısımlar zaten sistemde değiştirilmiş vaziyette. Eksik kısım ise burasıymış.

Kod:
        if self.wndChat:
            self.wndChat.Destroy()

Altına ekle:
Python:
        if self.wndCharacter:
            self.wndCharacter.Close()
        else:
            if self.wndCharacter:
                self.wndCharacter.Hide()
 
Döktürüyorsunuz. :) Sadece bir kısımda eksik varmış diğer kısımlar zaten sistemde değiştirilmiş vaziyette. Eksik kısım ise burasıymış.

Kod:
        if self.wndChat:
            self.wndChat.Destroy()

Altına ekle:
Python:
        if self.wndCharacter:
            self.wndCharacter.Close()
        else:
            if self.wndCharacter:
                self.wndCharacter.Hide()
Estağfirullah, sorunun çözülmesine sevindim :) Dolayısıyla konuyu kapatıyorum, iyi çalışmalar
 
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.
Geri
Üst