为什么不试试这个:
?>
function getDir($dir) {
$dirArray[]=NULL
if (false != ($handle = opendir ( $dir ))) {
$i=0
while ( false !== ($file = readdir ( $handle )) ) {
//去掉"“.”、“..”以及带“.xxx”后缀的文件
if ($file != "." &&$file != ".."&&!strpos($file,".")) {
$dirArray[$i]=$file
$i++
}
}
//关闭句柄
closedir ( $handle )
}
return $dirArray
}
?>
$dir="你的文件夹"
echo getDir($dir)
源程序如下:
1. 利用InputBoxb函数输入3个数,存放到数值型变量中,然后对其进行比较。
2. 对三个数进行排序,只能通过两两对比,一般可用三条单分支IF语句来实现。
3 .要显示多个数据,可以用“;”逐一显示,也可利用“&”字符串连接将多个变量连接显示。
解题:
先在窗体上画一个按钮,代码如下:
Private Sub Command1_Click()
Dim x!, y!, z!
x = InputBox("input x")
y = InputBox("input y")
z = InputBox("input z")
Print " 排序前:"x" "y" "z
If x <y Then t = x: x = y: y = t
If x <z Then t = x: x = z: z = t
If y <z Then t = y: y = z: z = t
Print " 排序后:"x" "y" "z
End Sub
运行程序效果图如下:
扩展资料:
其他实现方法:
Private Sub Command1_Click()
Dim tmp, i, j As Integer '定变量
Dim a(2) As Integer '定数组
a(0) = x
a(1) = y
a(2) = z 'xyz三个数赋值给数组,实际调试中用实际数字代替
For i = 0 To 1
For j = 1 To 2
If a(i) > a(j) Then
tmp = a(i)
a(i) = a(j)
a(j) = tmp
End If
Next j
Next i '循环由小到大排序,估计这是考点
Print a(0)
Print a(1)
Print a(2) ,由小到大逐一打印环境:Qt 5.9.1_msvc2015_64bit,Window 10.
为了实现在qt程序中打开Window上其他应用程序,并将其嵌入到qt程序中。
方法:获取外部程序的窗口句柄,调用
[static]QWindow *QWindow::fromWinId(WIdid)
函数创建QWindow,然后调用
[static]QWidget *QWidget::createWindowContainer(QWindow *window,QWidget *parent = Q_NULLPTR,Qt::WindowFlagsflags = Qt::WindowFlags())
创建一个QWidget即可。
关键之处在于如何获取窗口句柄。
我们都知道Windows编程中,可以通过FindWindow系列的函数获取HWND类型的窗口句柄(需要include windows.h头文件),HWND类型和Qt中的WId类型可以转换,所以通过FindWindow我们可以找到想要嵌入的窗口,不论是子窗口还是主窗口,即使是整个桌面也未尝不可。
下面贴一下效果图:
原程序:
这是嵌入之后的Qt程序:
可以看到,在这里标题栏和边框都消失了。很有意思的方法,好奇Qt是如何做到这种进程间的嵌套,这篇只是简单介绍,待我研究透彻再来给大家分享。
如果不需要嵌套窗口的话,Qt也提供了其他的方法,不需要如此复杂。像QDesktopServices类,可以打开本地应用程序(打开文件或网页时,自动选择默认的应用程序)。
一开始的目的,是想将office窗口显示到qt程序里面,采用的是activexQt模块,但activex的开发需要一定时间的积累,微软的东西比较难用,加上activex只能打开微软自家的东西(有待验证),而且如果以后不仅仅是显示office呢?所以干脆直接嵌套进程窗口,一劳永逸。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)