找回密码
 立即注册

QQ登录

只需一步,快速开始

sheep

论坛元老

21

主题

83

帖子

2万

积分

论坛元老

积分
20121

活字格认证

sheep
论坛元老   /  发表于:2010-10-25 10:21  /   查看:6788  /  回复:6
private FontDialog MyFont;
        private void toolStripButton3_Click(object sender, EventArgs e)
        {
            MyFont = new FontDialog();
            MyFont.ShowApply = true;
            MyFont.Font = this.toolStripComboBox1.Font;
            MyFont.Apply += new System.EventHandler(MyFont_Apply);      
            if (MyFont.ShowDialog() != DialogResult.OK)
            {
                this.fpSpread1.ActiveSheet.SelectionFont = MyFont.Font;
            }
        }
        private void MyFont_Apply(object sender, System.EventArgs e)
        {     
            this.toolStripComboBox1.Font = MyFont.Font;
        }我是这么写的,但是不能改变选中的单元格的字体,求指导,谢谢啦!

6 个回复

倒序浏览
gw0506
超级版主   /  发表于:2010-10-25 11:18:00
沙发
你是怎么操作的?
从代码来看,你必须选择“cancel”才能应用,这不对吧?

改为:

  1. if (MyFont.ShowDialog() == DialogResult.OK)
  2. {
  3.     this.fpSpread1.ActiveSheet.SelectionFont = MyFont.Font;
  4. }
复制代码
回复 使用道具 举报
sheep
论坛元老   /  发表于:2010-10-25 11:20:00
板凳
哎呀,原来是这样,解决了!谢谢!
回复 使用道具 举报
sheep
论坛元老   /  发表于:2010-10-25 14:28:00
地板
囧了。。突然发现这样只能在选定这个单元格的时候字体才改变,当选择另外单元格的时候,原来修改的就自动复原成默认字体了
回复 使用道具 举报
gw0506
超级版主   /  发表于:2010-10-25 15:18:00
5#
因为你改的就是SelectionFont,所以肯定是这样的效果。

你想改变所有的Cell的Font,就套个for循环,遍历所有的Cell并改变Cell.Font就好了。
回复 使用道具 举报
sheep
论坛元老   /  发表于:2010-10-25 15:25:00
6#
我想改变选中的单元格的字体,但是希望改变了之后,即使没激活这个的单元格,呈现的也是我改变字体后的样子。该怎么写这一句啊
回复 使用道具 举报
gw0506
超级版主   /  发表于:2010-10-25 15:38:00
7#
  1. this.fpSpread1.ActiveSheet.ActiveCell.Font = MyFont.Font;
复制代码
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部