CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  C#

[求助,急]关于在一个窗体程序中获取主窗体支持的字体族问题

楼主wildwolfsun(菜鸟初飞)2004-05-02 00:51:52 在 .NET技术 / C# 提问

就是写了个windows的窗体程序,  
  在主窗体类Form1中  
  定义了一个组合框(name:cbxFont)  
  然后又添加了一个方法:GetFontFamilies()  
  代码如下:  
  private   void   GetFontFamilies()  
  {  
  Graphics   g   =   this.CreateGraphics();  
  FontFamily[]   ffs   =   FontFamily.GetFamilies(g);  
  for(int   i   =   0;   i<ffs.Length;i++)  
  {  
  cbxFont.Items.Add(ffs[i].Name);  
  }  
  }  
  目的就是想让cbxFont的Items项为主窗体支持的字体族。可是,我现实和理想总是有一定的差距   :(  :  
    当我编译没有错误的时候没有问题,当我执行的时候问题就来了,cbxFont.Items 没有被赋值,郁闷了。可是又不知道是哪里我做错了。  
   
  各位达人,救命。我就只能拿出我30%的财产---分,聊表谢意。  
   
  问题点数:70、回复次数:3Top

1 楼senkiner(金龍)回复于 2004-05-02 01:48:05 得分 70

上面的代码是没有问题的,建议你检查一下其它部分的代码,比如  
  #region   Windows   窗体设计器生成的代码  
          ……//这里面  
  #endregion  
  或者其他对cbxFont进行了操作的地方。Top

2 楼wildwolfsun(菜鸟初飞)回复于 2004-05-02 11:43:05 得分 0

改了下窗体设计器的代码,cbxFont.Items 好像有值了,可是有新问题:在定义  
  cbxFont的操作时运行出错:代码如下:  
  private   void   cbxFont_SelectedIndexChanged(object   sender,   System.EventArgs   e)  
  {  
  string   fontname;  
  if   (cbxFont.SelectedIndex   ==   -1)  
  fontname   =   cbxFont.Items[66].ToString();  
  else    
  fontname   =   cbxFont.Items[cbxFont.SelectedIndex].ToString();  
  txtEdit.Font   =   new   Font(fontname,  
                                                                          float.Parse(lbxSize.SelectedItem.ToString()));  
  }  
  调试发现,执行到下面这一条语句时出错:  
  txtEdit.Font   =   new   Font(fontname,  
                                                                          float.Parse(lbxSize.SelectedItem.ToString()));  
   
  出错类型:其他信息:   未将对象引用设置到对象的实例;  
   
   
  快要疯了,高手救命啊。Top

3 楼senkiner(金龍)回复于 2004-05-04 14:44:07 得分 0

你的lbxSize应该是一个listBox吧,出现这种错误的原因是你并没有选中lbxSize中的任何项,你要先选中lbxSize中的一项,然后再选cbxFont中的。  
  if(lbxSize.SelectedIndex   !=   -1)  
        txtEdit.Font   =   new   Font(fontname,float.Parse(lbxSize.SelectedItem.ToString()));  
  else  
        txtEdit.Font   =   new   Font(fontname,float.Parse(lbxSize.Items[0].ToString()));  
  Top

相关问题

  • 在winform窗体中如何设置字体并获取字体,在线等!
  • 在无法获取主窗体句柄时的子窗体句柄的查找
  • 急、急、急!如何在主窗体中SendMessage后,在多子窗体中获取该消息!
  • 关于窗体字体得问题
  • NT4.0窗体字体旋转45度
  • excel表窗体空件字体设置
  • excel表窗体控件字体设置
  • 主窗体和子窗体的问题?
  • 如何获取是否为当前窗口?如何关闭所有窗体除主窗体?我是新手,高手请进!
  • 有二个窗体FormA、FormB,它们都不是主窗体。要在FormB中获取FormA的控件的属性。如何办啊!

关键词

  • 窗体
  • 主
  • getfontfamilies
  • 程序
  • fontfamily

得分解答快速导航

  • 帖主:wildwolfsun
  • senkiner

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo