【问题标题】:Rotating the image of a picturebox that only has an ImageLocation旋转仅具有 ImageLocation 的图片框的图像
【发布时间】:2012-10-12 21:39:55
【问题描述】:

我有一个纸牌游戏程序,当一张牌被丢弃并被发现是某种类型的牌时,它会进入我的 DefeatedChars 堆,它只是一个名为 DefeatedChars 的 PictureBox。目前,我所有的图像都是在运行时使用 ImageLocation 加载的,ImageLocation 是一些存储所有卡片图像的网站的字符串。我想知道如何将此字符串加载到 PictureBox 的 Image 属性,以便我可以旋转它,因为尝试旋转会给我一个空指针异常,因为 Image 什么都不是,至少我认为这就是原因。我通过调试知道当 DefeatedChars.Image 什么都不是。我的问题是,有没有办法在 ImageLocation 加载后旋转它,或者有没有办法将在 ImageLocation 找到的图像移动到图像属性中。最终,当我完成游戏时,我希望在图像位置找到的图像存储在本地某个地方,这样如果网站发生变化,卡片将保留它们的图像和属性,但这是一个问题后来在路上。这是我坚持的代码,它给了我一个空指针异常。我在 Visual Studio 中编码。

DefeatedChars.ImageLocation = tempCard.ImageLocation DefeatedChars.Image.RotateFlip(RotateFlipType.Rotate270FlipNone)

【问题讨论】:

    标签: image rotation picturebox


    【解决方案1】:

    我试过这个... DefeatedChars.Image = Image.FromFile(tempCard.ImageLocation) 但我遇到了“不支持 URI 格式错误”。然后我在网上找到了这个小宝石,替换了上面的第一行代码。

    DefeatedChars.Image = Image.FromStream(System.Net.HttpWebRequest.Create(tempCard.ImageLocation).GetResponse().GetResponseStream())

    它将 URL 转换为流,以便 Image 属性可以使用它,它的工作原理就像一个魅力。

    【讨论】:

      猜你喜欢
      • 2011-05-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多