我有个教育软件 转换窗体的时候 老是一闪一闪的~谁能帮我完善一下呢~
程序  而且我有一个问题 我有好几个flash 但是大小不一样~我用一个flash控件的话怎么使他们 一样大并且占满~~屏幕窗体的上方~就这些分了~~希望能帮帮我 我好好学习~ 帮我改改吧 

解决方案 »

  1.   

    this.SetStyle(ControlStyles.AllPaintingInWmPaint, true);
             this.SetStyle(ControlStyles.DoubleBuffer, true);
             this.SetStyle(ControlStyles.UserPaint, true);
    这3句话就是防闪烁的。
    获取窗体的大小,然后赋值给flash,如果存在变形,那么就根据宽和高的比例去取相应的高和宽
      

  2.   

    窗体闪的话,,这个要看你代码是怎么写的了。  不知道下面的对齐对你有帮助么,,看下1.AlignMode (读写) 
    语法:AlignMode As Long 
    说明:对齐方式(与 SAlign 属性联动)。当控件的 长宽比例与影片不一致且 WMode 不为 ExactFit 时,影片 
    (没有被放大的)在控件中显示的位置可用该属性调整。 该属性值由标志位组成。如图,将该属性值(二进制)中相 应的位标记为 1 就设置了相应的对齐方向。 
    属性值与相应的对齐方式(后面括号里是二进制数) 
    1:左对齐(0001)  2:右对齐(0010)  4:顶对齐 
    (0100)  8:底对齐(1000) 
    也可以组合各种对齐方式,同时将两个或以上的位标 记为 1 ,也就是将这四个基本值组合相加。比如同时左对齐 和顶对齐,属性值则设为 5(0101)。 
    例子 : 设置影片为右对齐 : 
    movie.AlignMode = 2 
    2.BackgroundColor(读写) 语法:BackgroundColor As Long 说明:影片的背景色(与 BGColor 联动)。以(红 
    × 65536 +绿× 256 +蓝)计算颜色值。红绿蓝颜色取 值范围(0-255 )。默认的影片背景色为 -1 。如果影片 设置了底色或有图片当作背景,那么看不出来该属性值的 改变会有什么影响 。 
    例子:将影片背景色设为蓝色 : 
    movie.BackgroundColor = 255 
    3.Base (读写) 
    语法:Base As String 
    说明:指定用于解决影片中所有相对路径的声明的基 地址。当影片与其需要的其他文件不在同一目录中的时候该 属性特别有用。如不特别指定,Base 的值默认为 ".",也就 是当前影片所在的路径。 
    例子 : 
    movie.Base = "Http://www.domain.com/pathname1/ 
    pathname2" 
    4.BGColor (读写) 
    语法:BGColor As String 
    说明:影片的背景色(与 BackgroundColor 联动)。与 BackgroundColor 不同的是,BGColor 是一个六位的十六进 制数,每两位分别代表红绿蓝颜色值。如:FFEEAA 表示 红色值为 FF、绿色值为 EE 、蓝色值为 AA 。 
    例子:将影片背景色设为红色 : 
    movie.BGColor = "FF0000" 
    5.DeviceFont (读写) 
    语法:DeviceFont As Boolean 
    说明 : 决定是否使用影片内嵌的字体 , 默认值为 False 。将该属性值设为 True 则强制播放器不使用影片中 内嵌的字体而使用本地系统字体。 
    例子:movie.DeviceFont = True 
    6.EmbedMovie (读写) 
    语法:EmbedMovie As Boolean 
    说明:影片是否被存贮到控件所在的容器中。当你已 载入一个影片后将该属性设为 True ,播放影片时就不必再 去读 SWF 文件了。这使得在 PowerPoint 简报或 VB 程序 里使用 Flash 影片更容易。但将该属性设为 True 后,控 件的 Movie 属性就不再接受新的值了。要想播放另一个影 片(给 Movie 属性赋新值),必须先将 EmbedMovie 属 性设为 False 。 
    例子 : 
    movie.EmbedMovie = True 
    7.FrameNum (读写) 
    语法:FrameNum As Long 
    说明:影片当前帧的编号 (从 0 开始计数 )。设置 该属性值将使影片停在由 FrameNum 指定的帧处。 
    例子 : 显示当前帧数 : 
    MsgBox " 当前显示的是第 " & movie.FrameNum & 
    " 帧。" 
    使影片显示第 10 帧: Bomovie.FrameNum = 9 
    8.Loop (读写) 
    语法:Loop As Boolean 
    说明:是否循环播放。设为 True 是循环播放,设为 False 则只播放一次。 
    例子 : 
    movie.Loop = True 
    9.Menu (读写) 
    语法:Menu As Boolean 
    说明:是否显示菜单。设为 True 显示所有菜单,设 为 False 菜单被屏蔽,但仍有一项“About Macromedia Flash Player...”。如果你实在不喜欢这个菜单,应该在程 序中通过拦截鼠标消息的方法来达到目的。与在独立的 F l a s h 播放器中不同的是 ,在控件的右键菜单里点  
      

  3.   

    flash占满屏幕并一定是好的解决方法,
    如果flash清晰度不高,还是不要占满的好