【问题标题】:How Do I Pass PictureBox and Label Through Functions? [duplicate]如何通过函数传递 PictureBox 和 Label? [复制]
【发布时间】:2014-05-14 01:09:52
【问题描述】:

我在 Visual Studio 2012 的 GUI 环境中工作

void dealCard(PictureBox swag, Label swaggy)
{
    swag.Image = imageListCards->Images[deck[cardCounter].index];
    swaggy.Text = deck[cardCounter].name + " of " + deck[cardCounter].suit + ", " + deck[cardCounter].value;

    if(cardCounter == 51)
        cardCounter = 0;
    else
        cardCounter++;

}

void dealHand(PictureBox swag, PictureBox swag2, Label swaggy, Label swaggy2)
{
    dealCard(pictureBoxCard4, labelCard4);
    dealCard(pictureBoxCard5, labelCard5);
}   

pictureBoxCard4、labelCard4 等已经是我正在使用的形式。它没有编译部分 dealCard(pictureBoxCard4, labelCard4) 或下面的部分

【问题讨论】:

  • Jesse_BlackJack2::MyForm::dealCard' : 无法将参数 1 从 'System::Windows::Forms::PictureBox ^' 转换为 'System::Windows::Forms::PictureBox' c: \users\jesse martinez\documents\visual studio 2012\projects\jesse_blackjack2\jesse_blackjack2\MyForm.h 1538 1 Jesse_BlackJack2
  • 我是否必须使用指针或其他东西来做我想做的事情?
  • 您应该编辑问题以包含错误,并可能添加 c++-cli 标签以获得更多可见性。我不使用托管 C++,但我会从错误消息中假设您打算将它们作为句柄传递。
  • 您必须学习如何正确使用 ^ 帽子来处理 PictureBox 和 Label 等引用类型。有很多适用于 C++/CLI 的教程和书籍,您无需我们的帮助即可阅读。

标签: c++ user-interface c++-cli


【解决方案1】:

要通过函数传递变量,您必须使用指针。

【讨论】:

  • 我无法通过谷歌搜索找到它。你能指出我正确的方向吗?
  • cplusplus.com/doc/tutorial/pointers 底部提到在函数中使用指针。希望这会有所帮助。
  • 没有帮助,因为我使用的是 C++/CLI
猜你喜欢
  • 2017-04-02
  • 2019-07-03
  • 2012-09-04
  • 1970-01-01
  • 2017-06-02
  • 2018-04-02
  • 2021-04-24
  • 1970-01-01
  • 2017-06-12
相关资源
最近更新 更多