鼠标进入Image中显示出Image的画面物品属性

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.EventSystems;
using UnityEngine.UI;

public class OnJIn : MonoBehaviour,IPointerEnterHandler,IPointerExitHandler
{

public Image image0;//要显示的image
Vector2 vec2=new Vector2();//记录image的初始位置
bool showtrue;//判断是否进入ui需要显示
// Use this for initialization
void Start () {
    vec2 = image0.transform.position;//记录image的初始位置

}

// Update is called once per frame
void Update () {
    if(showtrue)
    {
        Vector3 mousePosition = Input.mousePosition;//鼠标的位置
        image0.transform.position = mousePosition;//把鼠标的位置赋值给image显示在他周围
    }
   
}

public void OnPointerEnter(PointerEventData eventData)//进入Image
{
    showtrue = true;
   

}

public void OnPointerExit(PointerEventData eventData)//离开image
{
    showtrue = false;
    image0.transform.position = vec2;//离开后image再回到初始位置
}

}
第二张图片是显示的属性,把pivot调到零是为了让image显示在鼠标的右上方
在这里插入图片描述
在这里插入图片描述
第二张图片是显示的属性,把pivot调到零是为了让image显示在鼠标的右上方

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
如果您在 DataGridView 显示数据库的图像时遇到 Image 属性无效的问题,可能是因为您没有正确地将图像数据转换为 Image 类型。请检查您的代码以确保正确地将图像数据转换为 Image 类型。 以下是一些可能导致 Image 属性无效的问题及其解决方案: 1. 图像数据为 null:如果图像数据为 null,则 Image 属性将无效。请确保您从数据库正确地检索了图像数据,并在将其转换为 Image 类型之前检查其是否为 null。 2. 图像数据无效:如果图像数据无效,则 Image 属性将无效。请确保您的图像数据是有效的,并且可以正确地转换为 Image 类型。您可以尝试使用其他图像文件,或者尝试使用绝对路径来设置 Image 属性的值,以确保图像文件可访问。 3. 数据类型不匹配:如果您将图像数据转换为错误的数据类型,则 Image 属性将无效。请确保您将图像数据正确地转换为 Image 类型,例如使用 MemoryStream 将字节数组转换为 Image 类型。 以下是一个示例代码,展示了如何在 DataGridView 显示数据库的图像,并确保 Image 属性有效: ```c# // 在 DataGridView 添加一个 DataGridViewImageColumn 列 DataGridViewImageColumn dgvImageColumn = new DataGridViewImageColumn(); dgvImageColumn.Name = "Image"; dataGridView1.Columns.Add(dgvImageColumn); // 从数据库检索数据并将图像添加到 DataGridViewImageColumn using (SqlConnection connection = new SqlConnection(connectionString)) { connection.Open(); SqlCommand command = new SqlCommand("SELECT ImageData FROM MyTable", connection); SqlDataReader reader = command.ExecuteReader(); while (reader.Read()) { byte[] imageData = (byte[])reader["ImageData"]; if (imageData != null) { using (MemoryStream ms = new MemoryStream(imageData)) { try { Image image = Image.FromStream(ms); dataGridView1.Rows.Add(image); } catch (Exception ex) { Console.WriteLine(ex.Message); } } } } } ``` 在上面的示例代码,我们首先在 DataGridView 添加了一个名为 "Image" 的 DataGridViewImageColumn 列。然后,我们从数据库检索数据,并将图像数据转换为 Image 类型,并将其添加到 DataGridViewImageColumn 。请注意,我们使用 try-catch 块来捕获可能导致 Image 属性无效的异常,并在控制台上输错误消息。 希望这可以帮助您解决 Image 属性无效的问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值