我是GWT的新手...我想在我的Web应用程序中实现会话基本上我希望会话从单击按钮(处理事件)开始,然后单击另一个按钮结束(其他处理事件) ).这是可能的?
怎么一步一步做?
这段代码好吗?:
主要(客户端):
Button b1 = new Button("b1");
b1.addClickHandler(new ClickHandler) {
public voin onClick(){
...
rpc.setSession(callback); //rpc call the service...
}
}
Button b2 = new Button("b2");
b1.addClickHandler(new ClickHandler) {
public voin onClick(){
...
rpc.exitSession(callback);
}
}
Run Code Online (Sandbox Code Playgroud)
// ------------------------------------------------ ------------------------------------
import com.google.gwt.user.client.rpc.RemoteService;
public interface MySession extends RemoteService {
public void setSession();
public void exitSession();
}
Run Code Online (Sandbox Code Playgroud)
// ------------------------------------------------ ------------------------------------
import com.google.gwt.user.client.rpc.AsyncCallback;
public interface MySessionAsync {
void setSession(AsyncCallback<Void> callback);
void exitSession(AsyncCallback<Void> callback);
}
Run Code Online (Sandbox Code Playgroud)
// ------------------------------------------------ ------------------------------------
import de.vogella.gwt.helloworld.client.MySession;
public class …Run Code Online (Sandbox Code Playgroud) 我试图检测何时单击小部件按钮但没有任何Intent额外的东西出现在onReceive方法中.
onReceive每次点击都会调用,但我的所有内容都不会Intent显示出来.
我的代码如下:我只在更新时挂钩切换按钮,所以不确定这是否正确.null尽管我设置了这个,但没有一个额外的东西出现和类别.
onUpdate(上下文上下文等):
RemoteViews remoteViews = new RemoteViews(context.getPackageName(),
R.layout.my_widget);
Intent buttonIntent = new Intent(context, MyWidgetProviderClass.class);
buttonIntent.setAction(ACTION_WIDGET_RECEIVER);
buttonIntent.putExtra("BUTTON_CLICKED", "buttonClick");
buttonIntent.putExtra("BUTTON",899);
PendingIntent muPendingIntent = PendingIntent.getBroadcast(context, 0,
buttonIntent,
PendingIntent.FLAG_CANCEL_CURRENT);
buttonIntent.addCategory("buttonclick");
remoteViews.setOnClickPendingIntent(R.id.ToggleImageButton, myPendingIntent);
appWidgetManager.updateAppWidget(appWidgetIds, remoteViews);
Run Code Online (Sandbox Code Playgroud)
的onReceive():
intent.getIntExtra("BUTTON",-1); ---> 1
intent.getCategories() --- > null
Run Code Online (Sandbox Code Playgroud) 我有一个应用程序和一个小部件.我该怎么做才能安装一件事.而不是单独安装应用程序和小部件?
我希望你理解我,否则就问.
Gaauwe
PS.我还在学英语
我想编写一个应用程序,在小部件中显示一些信息,应该不时更新.不时意味着,我使用闹钟定时器来触发peroidic更新.因此,问题intent.getIntArrayExtra(AppWidgetManager.EXTRA_APPWIDGET_IDS);是:广播接收器意图为空.
这是我的小部件提供者:
public class MyWidgetProvider extends AppWidgetProvider {
public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) {
final int N = appWidgetIds.length;
for(int i=0; i<N; i++) {
int widgetId = appWidgetIds[i];
RemoteViews rViews = new RemoteViews(context.getPackageName(), R.layout.widget_layout);
Intent intent = new Intent(context.getApplicationContext(), TrafficService.class);
intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_IDS, appWidgetIds);
rViews.setTextViewText(R.id.TextView01, "" + System.currentTimeMillis());
appWidgetManager.updateAppWidget(widgetId, rViews);
}
}
}
Run Code Online (Sandbox Code Playgroud)
这是导致问题的BroadcastReceiver:
public class TimeIntervalReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
// set new alarm timer (code cut out)
AppWidgetManager …Run Code Online (Sandbox Code Playgroud) image = BitmapFactory.decodeResource(res, R.drawable.image);
button = new ImageButton(this);
button.setImageBitmap(image);
Run Code Online (Sandbox Code Playgroud)
我想删除图像和按钮边框之间的填充.我怎样才能做到这一点?
我正在使用GTK + 2.0和Cairo在C中编写自定义应用程序.仅用于学习目的(如果成功,然后用于部署),我希望重新创建类似于覆盖工具栏/窗口小部件(我很抱歉,如果术语不正确),当鼠标移动到窗口上的给定区域时出现,当鼠标移开时消失.正如我想象的那样,工具栏应该出现在现有小部件的顶部,而不会替换它们或以任何方式改变小部件包装.有可能完成吗?如果是,请您指出相关的教程/示例和/或概述一种方法来做同样的事情?提前致谢.
假设我在主窗口中有一个小部件,并且想要仅在小部件上跟踪鼠标位置:这意味着小部件的左下角必须是本地的(0,0).
问:我怎么能这样做?
ps以下函数没有这样做.
widget->mapFromGlobal(QCursor::pos()).x();
QCursor::pos()).x();
event->x();
Run Code Online (Sandbox Code Playgroud) 我在CKEditor 4.3中遇到小部件问题.如何允许小部件插入其他小部件?
例如:
第一个小部件有标题和内容.第二个小部件左侧面板和右侧面板.如何将第二个小部件放入第一个小部件?
谢谢!