QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 7747|回复: 1
打印 上一主题 下一主题

编程方式修改MATLAB命令窗口(Command Window)颜色

[复制链接]
字体大小: 正常 放大

2620

主题

162

听众

1万

积分

升级  0%

  • TA的每日心情
    开心
    2015-3-12 15:35
  • 签到天数: 207 天

    [LV.7]常住居民III

    社区QQ达人 发帖功臣 新人进步奖 优秀斑竹奖 金点子奖 原创写作奖 最具活力勋章 助人为乐奖 风雨历程奖

    群组第六届国赛赛前冲刺培

    群组国赛讨论

    群组2014美赛讨论

    群组2014研究生数学建模竞

    群组数学中国试看培训视频

    跳转到指定楼层
    1#
    发表于 2014-9-16 10:18 |只看该作者 |正序浏览
    |招呼Ta 关注Ta
    编程方式修改MATLAB命令窗口(Command Window)颜色
    经常会出现这样的应用情况,比如我们需要同时打开两个MATLAB应用程序,此时我们希望能够通过颜色直观的区分它们。我们知道,可以通过File/Preferences菜单进行交互式修改MATLAB命令窗口的前景色和背景色,但可否通过编程的方式进行调整呢?

    首先我们可以尝试修改MATLAB首选项中的颜色方案来达到效果
    % 不使用MATLAB首选项中的配色
    com.mathworks.services.Prefs.setBooleanPref('ColorsUseSystem',0);

    % 指定背景颜色
    com.mathworks.services.Prefs.setColorPref('ColorsBackground',java.awt.Color.yellow);
    com.mathworks.services.ColorPrefs.notifyColorListeners('ColorsBackground');
    复制代码
    但是很惋惜的是,上面的修改会对所有的MATLAB窗口和所有MATLAB会话生效,比如Command Window,Command History,WorkSpace等,也许这并不是我们需要的。

    比如我们只是希望修改Command Window的颜色,并且重启MATLAB以后,刚才的配色方案自动失效。下面的代码片段将顺利的帮你达到预期的效果:
    cmdWinDoc = com.mathworks.mde.cmdwin.CmdWinDocument.getInstance;
    listeners = cmdWinDoc.getDocumentListeners;
    ii=1;
    % 循环的方式,找到jTextArea的实例,然后设置颜色
    while true
        jTextArea = listeners(ii);
        if isa(jTextArea,'javax.swing.JTextArea$AccessibleJTextArea')
            break
        end
        ii=ii+1;
    end
    复制代码
    在找到jTextArea实例以后,我们就可以设置颜色,并且立即生效,重启MATLAB自动失效
    % 可以使用下面任意一种方法设置背景色
    jTextArea.setBackground(java.awt.Color.yellow);
    jTextArea.setBackground(java.awt.Color(1,1,0));
    set(jTextArea,'Background','yellow');
    set(jTextArea,'Background',[1,1,0]);
    复制代码

    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    深V礼        

    246

    主题

    24

    听众

    8718

    积分

  • TA的每日心情
    慵懒
    2014-11-8 19:08
  • 签到天数: 55 天

    [LV.5]常住居民I

    管理员

    超级版主

    版主

    发帖功臣 新人进步奖 优秀斑竹奖 金点子奖 原创写作奖 最具活力勋章 助人为乐奖 风雨历程奖

    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2025-5-23 23:31 , Processed in 0.509669 second(s), 56 queries .

    回顶部