我有代码实现javafx拖放类似于http://docs.oracle.com/javafx/2/drag_drop/HelloDragAndDrop.java.html 我想测试用户是否已将图像下垂到正确的区域我不知道是否有方法来获取源并获取目标,以便我可以检查源是否匹配正确的目标.我正在使用这个可视化界面: https: //dl.dropbox.com/u/6241504/3-2-2013%207-35-50%20PM.png在此先感谢...
我有一个带有GridView的C#WinForms应用程序,它显示了数据库中包含存储在数据库中的blob(文件PDF/JPG /等)的记录.
我可以双击网格中的一行,将blob写入磁盘并打开文件.我可以单击行来选择一行或多行(使用ctrl + shift)我可以将文件拖到网格上,将文件作为行添加到网格(和数据库)
现在我希望用户能够将一个或多个行从网格拖到例如桌面或邮件客户端,但无法弄清楚在什么情况下启动"拖动"操作.
当用户使用鼠标左键选择一个或多个文件时,拖动使用相同的鼠标左键,两个事件都会触发鼠标按下事件.如何确定用户将要做什么?
我已尝试在鼠标按下事件中启动拖动操作,但如果我想选择多行,则每次单击拖动操作开始的行时都不起作用...
例如,在Windows资源管理器中如何处理?如何检测用户尝试做什么?
我创建了一个框架,然后在其中创建了面板.我在一个面板中放置了一个图像,现在我需要将该图像拖到另一个面板上.我怎么能这样做 作为初学者,请逐步解释.
我有一些在IE 10中无法正常工作的拖放上传代码.我的事件处理程序看起来像这样:
dragCatcher.on('drop', function (e) {
e.preventDefault();
e.stopPropagation();
console.log(e.originalEvent.dataTransfer.files);
}).on('dragenter', function (e) {
e.preventDefault();
e.stopPropagation();
}).on('dragleave', function (e) {
e.preventDefault();
e.stopPropagation();
}).on('dragover', function (e) {
e.preventDefault();
e.stopPropagation();
console.log(e.originalEvent.dataTransfer.types);
});
Run Code Online (Sandbox Code Playgroud)
两人都console.log拿出来了undefined.我可以确认它不是一个控制台错误,因为e.originalEvent.dataTransfer.files[0]出现错误.我确定我错过了一些明显的东西,但我似乎无法弄明白.
我是JavaFX动画的新手.我正在尝试将代码作为另一个大项目的试验; 基本上我想用鼠标拖动移动圆圈,当圆圈在矩形上方时,突出显示矩形.如果将圆圈拖放到矩形上,请将其颜色更改为圆形的颜色.
到目前为止,我已经设法用鼠标移动圆圈,但我不确定为什么矩形的OnDragEntered方法什么都不做.
这是FXML:
<?xml version="1.0" encoding="UTF-8"?>
<?import java.lang.*?>
<?import java.util.*?>
<?import javafx.scene.layout.*?>
<?import javafx.scene.paint.*?>
<?import javafx.scene.shape.*?>
<?import javafx.scene.text.*?>
<AnchorPane id="AnchorPane" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="600.0" xmlns:fx="http://javafx.com/fxml" fx:controller="com.sc.colordx.controller.D15Controller">
<children>
<Rectangle fx:id="r1" arcHeight="5.0" arcWidth="5.0" fill="WHITE" height="152.0" layoutX="33.0" layoutY="14.0" onDragDropped="#fillBox" onDragEntered="#highlightBox" pickOnBounds="true" stroke="BLACK" strokeType="INSIDE" width="52.5" />
<Rectangle fx:id="r2" arcHeight="5.0" arcWidth="5.0" fill="WHITE" height="152.0" layoutX="91.0" layoutY="14.0" onDragDropped="#fillBox" onDragEntered="#highlightBox" stroke="BLACK" strokeType="INSIDE" width="52.5" />
<Circle fx:id="c1" fill="DODGERBLUE" layoutX="348.0" layoutY="262.0" onDragDetected="#startDrag" onMouseDragged="#moveCircle" onMouseReleased="#removeBind" radius="54.5" stroke="BLACK" strokeType="INSIDE" />
<Circle id="c1" fx:id="c2" fill="#ff3d00" layoutX="217.0" layoutY="262.0" onDragDetected="#startDrag" onMouseDragged="#moveCircle" onMouseReleased="#removeBind" …Run Code Online (Sandbox Code Playgroud) 我想在两个Listview(AllListView和PreListView)之间使用拖放。这是我得到的结果:
在AllListView中充满Items的函数中,我使用类似的方法将myCustomDataObject关联到单个ListviewItem:
ListViewItem newItem = new ListViewItem();
newItem.Text = myCustomDataObject.getName();
newItem.Tag = myCustomDataObject;
lst_All.Items.Add(newItem);
Run Code Online (Sandbox Code Playgroud)
我有两个列表视图的事件处理程序:
AllListView:
private void OnAllDragEnter(object sender, DragEventArgs e)
{
e.Effect = DragDropEffects.All;
// How Do I add my CustomDataObject?
}
private void OnAllItemDrag(object sender, ItemDragEventArgs e)
{
base.DoDragDrop(lst_All.SelectedItems[0], DragDropEffects.Move);
// Do I have to Do something to pass my CustomDataObject?
}
Run Code Online (Sandbox Code Playgroud)
PreListView:
private void OnPreDragEnter(object sender, DragEventArgs e)
{
//If there one of myCustomDataObject go on
e.Effect = DragDropEffects.Move;
}
private void OnPreDragDrop(object sender, DragEventArgs e) …Run Code Online (Sandbox Code Playgroud) 我已经阅读了有关拖放的所有内容,gestureRecognizer但尚未找到解决方案。我得到了10x10的 “游戏场” ,我想实现将之拖放到网格上并检查元素是否放置在“游戏场”上。
我将我的8个“ TempButtons”添加到了UIViewbuttonSuperView中action:@selector(imageMoved:withEvent:)。
- (IBAction) imageMoved:(id) sender withEvent:(UIEvent *) event
{
UIControl *control = sender;
originalPosition = [self getButton:sender];
UITouch *touch = [[event allTouches] anyObject];
point = [touch locationInView:control];
float step = 31.0; // Grid step size.
CGPoint center = control.center;
center.x += step * floor((point.x / step));
center.y += step * floor((point.y / step));
control.center = center;
}
Run Code Online (Sandbox Code Playgroud)
它起作用了,我可以移动网格步长为31px的任何按钮。我可以将其放置在任何地方,但必须将其放在UIViewfieldView上。如果将它放在正确的位置,就可以了,我可以将其替换在另一个图块上。但是,如果我将其放置在fieldView之外,则按钮应返回其位置。像这样:
if ([self.fieldView pointInside:point withEvent:nil])
{
control.center = center;
} …Run Code Online (Sandbox Code Playgroud) 这很奇怪:当textFile是硬编码时,双击[输出(拆分)弧文件]运行时脚本运行正常.将文件拖放到脚本上时,没有错误,也没有输出文件.使用拖放时脚本肯定会运行,我在writeTo之前的行中添加了一个简单的消息框,以确认它确实达到了这一点.拖放时没有文件输出,只有当textFile被硬编码时才能正常工作.有人请帮忙!
if WScript.Arguments.Count <> 0 then
textFile = WScript.Arguments(0)
else
textFile = "multi2.txt"
end if
saveTo = ""
writeTo = ""
strNewLine = "%_N_"
headingPattern = "(%_N_)"
dim fileFrom, regex, fileTo
Set fso = CreateObject("Scripting.FileSystemObject")
set fileFrom = fso.OpenTextFile(textFile)
set regex = new RegExp
set fileTo = nothing
with regex
.Pattern = headingPattern
.IgnoreCase = false
.Global = true
end with
while fileFrom.AtEndOfStream <> true
line = fileFrom.ReadLine
set matches = regex.Execute(line)
if matches.Count > 0 then
strCheckForString = UCase("%") …Run Code Online (Sandbox Code Playgroud) 目前,我正在使用tkinter模块进行Python 3.5 GUI开发。我希望能够将图像从应用程序中的一个位置拖到另一个位置。tkinter是否支持在应用程序内拖放,如果支持,您如何做?
在Tkinter中拖放问题?问有关在应用程序之间拖放的问题,这不是我在这里要问的。
from tkinter import *
root = Tk()
root.geometry("640x480")
canvas = Canvas(root, height=480, width=640, bg="white")
frame = Frame(root, height=480, width=640, bg="white")
frame.propagate(0)
image = PhotoImage(file="C:/Users/Shivam/Pictures/Paint/Body.png")
label = Label(canvas, image=image)
label.pack()
label_2 = Label(frame, text="Drop Here !")
label_2.pack()
label_2.place(x=200, y=225, anchor=CENTER)
canvas.pack(side=LEFT)
frame.pack()
root.mainloop()
Run Code Online (Sandbox Code Playgroud) 在我将此代码实现到我的图像上传器之前,我正在研究一个简单版本的ReactDND.
每次添加图像时,它都会被添加到状态并传递给ReactDND,以便它可以拖动并且也可以放置(因此用户可以重新排列图像).
除了一件事,一切都很好.我遇到的问题是在添加多个图像之后,是一旦我拖放和图像(工作),状态不再为ReactDND更新,我无法添加新图像.
这是我的下面的代码(注意我只是使用一个按钮来添加额外的项目状态):
主要成分:
import React from 'react';
// Drag and drop stuff
import { DragDropContext } from 'react-dnd';
import HTML5Backend from 'react-dnd-html5-backend';
import Container from './Container';
class ImageUploader extends React.Component {
constructor(props) {
super(props);
this.state = {
list: [],
listCount: 1
};
this.onAddItem = this.onAddItem.bind(this);
}
onAddItem(e) {
e.preventDefault();
var listArray = this.state.list;
var buildObject = {
text: 'Jeremy' + this.state.listCount.toString(),
age: '25',
id: this.state.listCount
};
listArray.push(buildObject);
let newListCount = this.state.listCount + 1;
this.setState({
list: listArray,
listCount: newListCount …Run Code Online (Sandbox Code Playgroud)