from
PyQt5.QtWidgets
import
*
from
PyQt5
import
QtCore, QtGui
from
PyQt5.QtGui
import
*
from
PyQt5.QtCore
import
*
import
sys
class
Window(QMainWindow):
def
__init__(
self
):
super
().__init__()
self
.setWindowTitle(
"Python "
)
self
.setGeometry(
100
,
100
,
600
,
400
)
self
.UiComponents()
self
.show()
def
UiComponents(
self
):
self
.spin
=
QSpinBox(
self
)
self
.spin.setGeometry(
100
,
100
,
250
,
40
)
self
.spin.setPrefix(
"Prefix "
)
self
.spin.setSuffix(
" Suffix"
)
line
=
self
.spin.lineEdit()
line.setDragEnabled(
True
)
label
=
CustomLabel(
'Drop here.'
,
self
)
label.setGeometry(
100
,
200
,
300
,
30
)
class
CustomLabel(QLabel):
def
__init__(
self
, title, parent):
super
().__init__(title, parent)
self
.setAcceptDrops(
True
)
def
dragEnterEvent(
self
, e):
if
e.mimeData().hasFormat(
'text / plain'
):
e.accept()
else
:
e.ignore()
def
dropEvent(
self
, e):
self
.setText(e.mimeData().text())
App
=
QApplication(sys.argv)
window
=
Window()
sys.exit(App.
exec
())