Çözüldü Tooltipteki bir elementi ortalayıp en alt satıra almak.

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ı.

Kaptan Yosun

Moderatör
Moderatör
Geliştirici
Yardımsever Üye
Mesaj
959
Çözümler
31
Beğeni
933
Puan
939
Ticaret Puanı
0
İyi günler,

Antiflaglar için tooltip'te emojiler kullandım. Ancak emojiler ortalı değiller ve en alt satıra nasıl alacağımı bilmiyorum. Yardımcı olabilir misiniz?

uitooltip.py:
Genişlet Daralt Kopyala
    if app.ENABLE_ANTIFLAG_TOOLTIP:
        def AppendAntiflagInformation(self):
            antiFlagDict = {
                "|Eemoji/anti_drop|e"     : item.ITEM_ANTIFLAG_DROP,    ## ++
                "|Eemoji/anti_sell|e"     : item.ITEM_ANTIFLAG_SELL,    ## ++
                #localeInfo.TOOLTIP_ANTIFLAG_GIVE: item.IsAntiFlag(item.ITEM_ANTIFLAG_GIVE),
                #localeInfo.TOOLTIP_ANTIFLAG_STACK: item.IsAntiFlag(item.ITEM_ANTIFLAG_STACK),
                "|Eemoji/anti_shop|e"     : item.ITEM_ANTIFLAG_MYSHOP,  ## ++
                "|Eemoji/anti_safebox|e" : item.ITEM_ANTIFLAG_SAFEBOX, ## ++
            }
            
            antiFlagNames = [name for name, flag in antiFlagDict.iteritems() if item.IsAntiFlag(flag)]
            if antiFlagNames:
                self.AppendSpace(5)

                textLine = self.AppendTextLine('{}'.format(' '.join(antiFlagNames)), self.DISABLE_COLOR)
                textLine.SetFeather()

Nasıl görünüyorlar:

Screenshot_1.png
Screenshot_2.png


Ortalamak için textline satırını "textLine = self.AppendTextLine('{}'.format(' '.join(antiFlagNames)), self.DISABLE_COLOR, True)" olarak düzenlemeyi denedim ancak hiçbir şey değişmedi.
 
Çözüm
Python:
Genişlet Daralt Kopyala
    def AddItemData(self, itemVnum, metinSlot, attrSlot = 0, flags = 0, unbindTime = 0):
        self.itemVnum = itemVnum
        item.SelectItem(itemVnum)
        itemType = item.GetItemType()
        itemSubType = item.GetItemSubType()

        if app.ENABLE_ANTIFLAG_TOOLTIP:
            self.AppendAntiflagInformation()
        
        self.ShowToolTip()

Yanlış olan kısım burası.

Python:
Genişlet Daralt Kopyala
        self.ShowToolTip()

    def __DragonSoulInfoString (self, dwVnum):

bunun üstüne eklemen gerek.
Python:
Genişlet Daralt Kopyala
    def AddItemData(self, itemVnum, metinSlot, attrSlot = 0, flags = 0, unbindTime = 0):
        self.itemVnum = itemVnum
        item.SelectItem(itemVnum)
        itemType = item.GetItemType()
        itemSubType = item.GetItemSubType()

        if app.ENABLE_ANTIFLAG_TOOLTIP:
            self.AppendAntiflagInformation()
        
        self.ShowToolTip()

Yanlış olan kısım burası.

Python:
Genişlet Daralt Kopyala
        self.ShowToolTip()

    def __DragonSoulInfoString (self, dwVnum):

bunun üstüne eklemen gerek.
 
Çözüm
Heh düzeldi çok çok sağolun. Tutorialı takip ederken tam anlayamamışım konum olarak nereyi kastettiğini...

Screenshot_3.png


Bir de sormak istediğim bunu yukarıya veya ortaya almak istersem ne yapmam gerekir? Hangi kod konumunu belirtiyor? Yada konumu "self.AppendAntiflagInformation()" kodunun diğer kodlardan önce veya sonra gelmesi mi belirliyor?
 
Dediğin gibi aynı en altta olmasını istersen show tooltipin üstünde olur.
 
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.
Üst