一半君的总结纸

听话只听一半君

#116 Maya2015如何单独调整channelbox的行高以及字体?

在lz的 14’屏幕的1920×1080笔记本屏幕上,maya2105的字太小 (2016才有dpi设置,之前没有)

我们可以修改 /usr/autodesk/maya2015-x64/resources/MayaStrings 把字调大,详细步骤见这里,但是有点不足,当 menu and general UI font 调成16的时候,其他地方的字都够大了,但是channelbox的字头脚都会被切掉,如果字体大小设为15,channelbox看起来好了,其他地方的字又太小了

channelbox_bad

如上图所示,字体为16的时候顶部和底部会少一块

  • 首先考虑qt stylesheet能不能把那部分的字体改小, 找到channelbox对应的QObject instance,然后直接设stylesheet即可
    from PyQt4 import QtCore, QtGui
    
    import maya.cmds as cmds
    import maya.OpenMayaUI as mui
    
    import sip
    
    ptr = mui.MQtUtil.findControl('mainChannelBox')
    channelBox = sip.wrapinstance(long(ptr), QtCore.QObject)
    
    styleSheet = '''
        QWidget {
          /* font-family: "Courier New"; */
          font: normal %spx;
        }
        ''' % '15'
    channelBox.setStyleSheet(styleSheet)
    

    字体也是可以改的,lz注释掉了

  • 或者可以考虑到刚开Maya的时候,也许channelbox还不存在?可以试试替换ctrl+a对应的命令,和放大script editor的字体类似的方法,开的时候我们才去设字体大小,从而我们可以在主窗口上设stylesheet

    在channelbox对应的QObject instance上加一个属性, 在主窗口的stylesheet里我们说,只有带这个属性的QWidget我们才去改他的字体大小

    channelBox.setProperty('maya_ui', 'channelBox')
    
    styleSheet = '''
        QWidget[maya_ui="channelBox"] {
          font: normal %spx;
        }
        ''' % '15'
    
    app = QtGui.QApplication.instance()
    app.setStyleSheet(styleSheet)
    

    channelbox_good_15

  • 或者我们不把字体改小到15,考虑直接把行间距改大,因为channelbox那部分其实是QTableView,所以
    # 默认是16
    channelBox.verticalHeader().setDefaultSectionSize(18)
    

    channelbox_good

综上,随便哪种办法,你只要在maya启动脚本里把他设好就行了

ps: 放大整个Maya的字体

styleSheet = '''
    QWidget {
      font: 14px;
    }
    '''
或者干脆
styleSheet = '''
    * {
      font: 14px;
    }
    '''

Related How-To’s

Advertisements

发表评论

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 更改 )

Twitter picture

You are commenting using your Twitter account. Log Out / 更改 )

Facebook photo

You are commenting using your Facebook account. Log Out / 更改 )

Google+ photo

You are commenting using your Google+ account. Log Out / 更改 )

Connecting to %s

%d 博主赞过: