我尝试播放jpg(循环播放),点击mp4后应播放结束,jpg应该再次播放.我不知道为什么但是在我玩了axWindowsMediaPlayer1_PlayStateChange后,vido播放然后停止.救命.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace Video
{
public partial class Form1 : Form
{
bool clicked = false;
public Form1()
{
InitializeComponent();
axWindowsMediaPlayer1.URL = "wait2.JPG";
}
private void axWindowsMediaPlayer1_PlayStateChange(object sender, AxWMPLib._WMPOCXEvents_PlayStateChangeEvent e)
{
if (axWindowsMediaPlayer1.playState == WMPLib.WMPPlayState.wmppsMediaEnded & clicked== true)
{
clicked = false;
axWindowsMediaPlayer1.settings.setMode("Loop", true);
axWindowsMediaPlayer1.URL = "wait2.JPG";
axWindowsMediaPlayer1.Ctlcontrols.play();
}
}
private void axWindowsMediaPlayer1_ClickEvent(object sender, AxWMPLib._WMPOCXEvents_ClickEvent e)
{
axWindowsMediaPlayer1.settings.setMode("Loop", false);
axWindowsMediaPlayer1.URL = "video.MP4";
axWindowsMediaPlayer1.Ctlcontrols.play();
clicked = …Run Code Online (Sandbox Code Playgroud) 首先,我必须说我在日期和时间设置中设置了自动设置,并且每个设备的时区是相同的.所以我用它[NSDate date]来获取时间戳,以毫秒为单位,然后编码NSData并发送到另一台设备.接收器数据正在被解码并用新的减去[NSDate date].这样我就可以获得发送和接收消息所需的总时间.我被认为是因为当发送者是iPhone 4 iOS6而接收者是iPhone 5 iOS7时接收者比发送者有更早的时间戳.我不知道为什么?[NSData date]对于那种操作,也许不是最可靠的类?我GCDAsyncUdpSocket用于发送/接收UDP.
代码发送者
NSData *data2 = [self createRandomNSData:8192];
NSMutableData *dataToSend =[NSMutableData data];
[dataToSend appendBytes:&tag length:sizeof(int)];
long long currentTimeStamp = (long long)([[NSDate date] timeIntervalSince1970]*1000.0);
[dataToSend appendBytes:¤tTimeStamp length:sizeof(long long)];
[dataToSend appendData:data2];
NSLog(@"%i || %lld || %lu",tag, currentTimeStamp,(unsigned long)[dataToSend length]);
[_udpSocket sendData:dataToSend toHost:@"230.0.0.1" port:_port withTimeout:-1 tag:tag];
tag++;
Run Code Online (Sandbox Code Playgroud)
代码接收器
char* dataBytes = [data bytes];
int inTag;
long long inCurrentTimeStamp;
[data getBytes:&inTag length:sizeof(int)];
[data getBytes:&inCurrentTimeStamp range:NSMakeRange(sizeof(int), sizeof(long long))];
long …Run Code Online (Sandbox Code Playgroud) 你好我得到Form1的一些变量,我想将它传递给另一个我将使用它的Form3.所以我有两个问题.
如何以其他形式访问变量?我想它会类似于
var newIdList:= Form1.idList
当var idList获取值时
procedure TForm1.Button1Click(Sender: TObject);begin
idList:=strtoint(edit1.text);
end
而我在另一个展示新形式我还能获得价值idList吗?
procedure TForm1.Button2Click(Sender: TObject);
begin
form1.hide;
form3.show;
end
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComCtrls;
type
TForm1 = class(TForm)
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
TabSheet3: TTabSheet;
Label5: TLabel;
Edit3: TEdit;
Edit2: TEdit;
Button3: TButton;
Edit4: TEdit;
Button2: TButton;
Button1: TButton;
Edit1: TEdit;
Label1: TLabel;
Label3: TLabel;
Label2: TLabel;
Edit5: TEdit;
Label7: TLabel;
Label6: TLabel;
Button4: TButton;
ListBox1: …Run Code Online (Sandbox Code Playgroud) 我必须trnasfer大文件,此时我使用TcpClient和NetworkStream类来做到这一点,但它并不是真的.当我使用NetworkStream.Write和Read它丢失字节时,我不知道如何确保TCP在所有字节都可以正常时停止读取.
然后我找到了Socket Class,现在我的问题是,"Socket会在它结束读取之前完全确定所有字节吗?"
我如何回复文件:
byte[] VideoFrom = new byte[FizeSizeSendedBefore];
byte[] PartData = new byte[clientSocket.ReceiveBufferSize];
int PartNumbers = (VideoSize / clientSocket.ReceiveBufferSize) + 1;
int lastPackageSize = VideoSize - ((PartNumbers - 1) * clientSocket.ReceiveBufferSize);
int i;
int bytesToRead = 0;
int ActualSize = 0;
for (i = 0; i < PartNumbers; i++)
{
if (i < PartNumbers - 1)
{
bytesToRead = clientSocket.ReceiveBufferSize;
}
else
{
bytesToRead = lastPackageSize;
}
ActualSize += bytesToRead;
PartData = new byte[bytesToRead];
System.Threading.Thread.Sleep(2);
networkStream.Read(PartData, 0, bytesToRead);
Buffer.BlockCopy(PartData, …Run Code Online (Sandbox Code Playgroud) 我有一个小问题.我创建了2D int数组.当我输入它时,我得到十六进制数字的小数.我正在使用Dev C++.
#include <cstdlib>
#include <iostream>
using namespace std;
int main()
{
const int max=9;
int ar[max][max]={
{0,6,0,0,2,0,0,4,0},
{5,0,0,3,0,0,0,0,0},
{0,8,0,0,1,0,0,0,0},
{6,0,0,0,0,7,0,0,0},
{0,3,7,0,0,0,2,8,0},
{0,2,0,8,0,0,0,3,0},
{0,0,0,0,0,0,0,0,0},
{7,0,0,4,0,0,0,0,1},
{0,0,0,0,6,0,0,2,0}};
for (int i=0;i<max;i++){
for(int j=0;j<max;j++){
cout<<ar[i,j]<<" ";
}
cout<<"\n";
}
system("pause");
return 0;
}
Run Code Online (Sandbox Code Playgroud)
作为回报,我得到了这个http://www.dropmocks.com/mf8wl
:)
首先,我的代码
procedure TForm1.Button3Click(Sender: TObject);
var tempId,i:integer;
begin
tempId:=strtoint(edit5.Text);
plik:=TStringList.Create;
plik.LoadFromFile('.\klienci\'+linia_klient[id+1]+'.txt');
if (plik.Count=1) then
begin
label6.Caption:='then';
if (tempId=StrToInt(plik[0])) then
begin
Label6.Caption:='Zwrócono';
plik.Delete(0);
end
end
else
for i:=0 to plik.Count-2 do
begin
if (tempId=StrToInt(plik[i])) then
begin
Label6.Caption:='Zwrócono';
plik.Delete(i);
end;
end;
plik.SaveToFile('.\klienci\'+linia_klient[id+1]+'.txt');
plik.Free;
end;
Run Code Online (Sandbox Code Playgroud)
for i:=0 to plik.Count-2 do我可以删除任何元素但不能删除.for i:=0 to plik.Count-1 do我可以删除任何元素而不是从头开始.因为否则List索引越界.怎么样?如何安全搜索和删除TStringList中的元素?
我有帮助文件"help.hap"我通过在HelpFile下的app properti中输入他的名字将他添加到app.然后我补充说
procedure TForm1.Pomoc1Click(Sender: TObject);
begin
Application.HelpContext(0);
end;
Run Code Online (Sandbox Code Playgroud)
但我得到错误
没有安装上下文相关的帮助
WTF我只是添加它吗?
首先,我专注于iOS,但我已经在Java中完成了~2个Android应用程序,这太可怕了.我无法解释原因.是Java还是Android本身,但我讨厌它,以至于现在我必须为Android编写另一个应用程序,所以我正在为我寻找所有选项.这是我发现的:
你对此事有何看法?
您对这两种解决方案有什么经验吗?