Why doesn't this thing work
I inherited my wife's shuffle as I bought her a nano, well after "inheriting" it for about a week with use on and off, the battery died. As normal, I put the thing on the dock to charge and to load songs, and it did absoloutly nothing, it wouldn't get recognized by the computer, and subsequently wouldn't charge. I suppose what my real question here is, do I have an $80 dollar trinket, or does this fall under the 1 year limited warranty. Any and all help on this matter would be greatly appreciated.
Thank You
The post here has links to a troubleshooting document for the Officejet 4620. If the steps there do not resolve the issue please contact HP Support, even if the printer is no longer under warranty. If the above does not give satisfactory results then please post back here after contacting HP.
Similar Messages
-
Why doesn't this update work?
Why doesn't this update work? Can't I sum up two select count(*) in such a subquery?
Thanks
update sales T
set T.field2 = ((select count(*)
from sales t
where t.field1 = trunc(sysdate)) + (select count((*)
from sales t2
where t2.field2 is null));
I get
ERROR at line 4:
ORA-00907: missing right parenthesis
with the * under the +
In other words I want to run
update sales set field = ((select count(*) ..... ) + (select count(*) ..... ))
Edited by: Mark1970 on 26-mar-2010 1.37
Edited by: Mark1970 on 26-mar-2010 1.38My problem is to undestand why I got a syntax error about parenthesis.Because you cannot perform arithmatic operation with a value coming from a subquery in a SET clause of UPDATE
SQL> update emp
2 set sal=(select 1 from dual)+1;
set sal=(select 1 from dual)+1
ERROR at line 2:
ORA-00933: SQL command not properly ended
SQL> select sal from emp
2 where deptno=(select 10 from dual)+10;
SAL
800
2975
3000
1100
3000
SQL> select deptno,sal from emp
2 where deptno=(select 10 from dual)+10;
DEPTNO SAL
20 800
20 2975
20 3000
20 1100
20 3000Try such few examples..
Twinkle -
Why Doesn't this App Work?
I make 10-15 stops in downtown Houston occasionally. The Houston Metro provides an app named "Houston TRIP". It's for the iPhone. I downloaded it for my iPod 5, but iTunes give an error message something like "Cannot install this app because it is not for this iPod." This app is one of several reasons I bought the iPod. I was assured the iPod would accept and run all iphone apps except those that used the telephone function. This app makes no phone calls -- it simply connects you with the Metro website and allows you to find bus routes from point to point. Since I can't load it, it may do other Metro things but finding bus routes is it's primary purpose.
Anybody know why it's incompatible with a current iPod, yet works on an iPhone? Also, there many iPhone apps that don't use the phone function yet won't work on the iPad?The requirements for that app are as follows. Note it requires a cellular connection and the iPod does not have one.
Requirements: Compatible with iPhone 3G, iPhone 3GS, iPhone 4, iPhone 4S, iPhone 5, iPad Wi-Fi + 3G, iPad 2 Wi-Fi + 3G, iPad Wi-Fi + 4G, iPad Wi-Fi + Cellular (4th generation) and iPad mini Wi-Fi + Cellular. Requires iOS 3.1 or later
From:
https://itunes.apple.com/us/app/id532621754?mt=8 -
Why doesn't this cycle work?
drain = true;
onEnterFrame = function(){
if(drain == true){water_mc.waterlv_mc._alpha -= 2;}
if(water_mc.waterlv_mc._alpha < 3){water_mc.waterlv_mc._alpha += 2; drain = !true;}
if(water_mc.waterlv_mc._alpha > 97){drain = true;}
the basic idea is simple, it empties and fills as the frames progress, but It seems to empty and stop when tested. What's going wrong?shintashi,
When code performs in unexpected ways, your best bet is often to do a bit of troubleshooting. One of the quickest, easiest ways to troubleshoot your code is to use the trace() function, which lets you "see" what's going on in your code. For example, try adding the following trace statement to your existing code:
drain = true;
onEnterFrame = function() {
trace(water_mc.waterlv_mc._alpha);
if (drain == true) {
water_mc.waterlv_mc._alpha -= 2;
if (water_mc.waterlv_mc._alpha < 3) {
water_mc.waterlv_mc._alpha += 2;
drain = !true;
if (water_mc.waterlv_mc._alpha > 97) {
drain = true;
When you test your movie again, you'll see the value of waterlv_mc's _alpha property in the Output panel, which might be an eye-opener for you. First, you'll notice that the _alpha property doesn't decrement by 2s, which is one of the quirks of ActionScript 1.0/2.0. The reason for this -- and this is just "one of those things" it's good to know -- is that the _alpha property is stored internally as a value from 0 to 256. The _alpha property "translates" those internal values for you to a range of 0 to 100, which is why the values veer from perfect integers.
This is a bit of a tangent, though, because the real reason waterlv_mc never "refills" is that your if() statements aren't actually set up to accomplish what you want them to. Compare the original code with the following variation:
var drain = true;
onEnterFrame = function() {
trace(water_mc.waterlv_mc._alpha);
if (drain == true) {
water_mc.waterlv_mc._alpha -= 2;
} else {
water_mc.waterlv_mc._alpha += 2;
if (water_mc.waterlv_mc._alpha >= 100) {
drain = true;
if (water_mc.waterlv_mc._alpha <= 0) {
drain = false;
In this case, the first if() statement either decrements or increments (thanks to an else) all in the same statement, depending on the value of drain. First and foremost, you're either decreasing or increasing the value of waterlv_mc's _alpha property. After that, another set of if() statements determines the value of drain. When _alpha is 100 (or higher!) you definitely want to "drain the water," so the drain variable is set to true. On the other hand, when _alpha is 0 (or lower), you want to "refill," so drain is set to false.
Let me know if this makes sense to you!
David Stiller
Contributor, How to Cheat in Adobe Flash CS4
http://tinyurl.com/dpsCheatFlashCS4
"Luck is the residue of good design." -
Why doesn't this code work in my extension? Retrieving generator settings from meta data
Using the code below in my host.jsx file within my html 5 extension this code doesnt work:
$._photoshop.setDocumentData('project.isXUI','true');
alert($._photoshop.getDocumentData('project.isXUI'));
Here's the error I get:
Error: The requested property does not exist.
It works perfectly from ExtendScript but the same lines of code do not work when called via "window.__adobe_cep__.evalScript". What am I missing?
$._photoshop = {
setDocumentData: function(key,value)
try
var classProperty = charIDToTypeID('Prpr');
var propNull = charIDToTypeID( 'null' );
var classNull = charIDToTypeID( 'null' );
var typeOrdinal = charIDToTypeID('Ordn');
var enumTarget = charIDToTypeID('Trgt');
var classDocument = charIDToTypeID('Dcmn');
var classLayer = charIDToTypeID('Lyr ');
var propProperty = stringIDToTypeID("property");
var propGeneratorSettings = stringIDToTypeID("generatorSettings");
var propProperty = stringIDToTypeID(key); //unique name for the setting
var keyTo = charIDToTypeID( 'T ' );
var actionSet = charIDToTypeID( "setd" );
//Make a property reference to generator settings for active layer.
//(use classDocument for the active document)
//NOTE: putProperty needs to come before putEnumerated
var theRef = new ActionReference();
theRef.putProperty(classProperty, propGeneratorSettings );
theRef.putEnumerated(classDocument, typeOrdinal, enumTarget);
//Build descriptor for your plugin settings, with 2 example settings, a boolean and a string
var mySettingsDesc = new ActionDescriptor();
mySettingsDesc.putString(propProperty,value);
//Execute the set action, setting the descriptor into the property reference,
//setting just the plugin's settings (propProperty == strMySettings)
var setDescriptor = new ActionDescriptor();
setDescriptor.putReference(propNull,theRef);
setDescriptor.putObject(keyTo,classNull,mySettingsDesc);
setDescriptor.putString(propProperty, "au.com.oddgames.xui");
executeAction( actionSet, setDescriptor, DialogModes.NO );
return true;
catch (e)
var exception = {};
exception.target = "setDocumentdata";
exception.message = e.toString();
return exception;
getDocumentData: function(key)
try
var classProperty = charIDToTypeID('Prpr');
var propNull = charIDToTypeID( 'null' );
var classNull = charIDToTypeID( 'null' );
var typeOrdinal = charIDToTypeID('Ordn');
var enumTarget = charIDToTypeID('Trgt');
var classDocument = charIDToTypeID('Dcmn');
var classLayer = charIDToTypeID('Lyr ');
var propProperty = stringIDToTypeID("property");
var propGeneratorSettings = stringIDToTypeID("generatorSettings");
var propProperty = stringIDToTypeID(key); //unique name for the setting
var actionGet = charIDToTypeID( "getd" );
//Make a property reference to generator settings for active layer.
//(use classDocument for the active document)
//NOTE: putProperty needs to come before putEnumerated
var theRef = new ActionReference();
theRef.putProperty(classProperty, propGeneratorSettings );
theRef.putEnumerated(classDocument, typeOrdinal, enumTarget);
//Execute the get action, getting the descriptor for the property reference,
//getting just the plugin's settings (propProperty == strMySettings)
var getDescriptor = new ActionDescriptor();
getDescriptor.putReference(propNull,theRef);
getDescriptor.putString(propProperty, "au.com.oddgames.xui");
var actionResult = executeAction( actionGet, getDescriptor, DialogModes.NO );
//Extract the settings
var mySettingsDesc = actionResult.getObjectValue(propGeneratorSettings);
return mySettingsDesc.getString(propProperty);
catch (e)
var exception = {};
exception.target = "getDocumentData";
exception.message = e.toString();
return exceptionOk got it, I have to make sure I pull the descriptor back then save my settings over the top:
$._photoshop = {
setDocumentData: function(keys,values)
try
var classProperty = charIDToTypeID('Prpr');
var propNull = charIDToTypeID( 'null' );
var classNull = charIDToTypeID( 'null' );
var typeOrdinal = charIDToTypeID('Ordn');
var enumTarget = charIDToTypeID('Trgt');
var classDocument = charIDToTypeID('Dcmn');
var classLayer = charIDToTypeID('Lyr ');
var propProperty = stringIDToTypeID("property");
var propGeneratorSettings = stringIDToTypeID("generatorSettings");
var strMySettings = "xui";
var keyTo = charIDToTypeID( 'T ' );
var actionSet = charIDToTypeID( "setd" );
var actionGet = charIDToTypeID( "getd" );
var theRef = new ActionReference();
theRef.putProperty(classProperty, propGeneratorSettings );
theRef.putEnumerated(classDocument, typeOrdinal, enumTarget);
var getDescriptor = new ActionDescriptor();
getDescriptor.putReference(propNull,theRef);
getDescriptor.putString(propProperty, strMySettings);
var actionResult = executeAction( actionGet, getDescriptor, DialogModes.NO );
var mySettingsDesc = actionResult.getObjectValue(propGeneratorSettings);
if (keys.indexOf(",") > 0)
keys = keys.split(',');
values = values.split(',');
else
keys = [keys];
values = [values];
for (var x =0; x < keys.length; x ++)
var key = keys[x];
var value = values[x];
var propMyStringProperty = stringIDToTypeID(key);
mySettingsDesc.putString(propMyStringProperty,value);
var setDescriptor = new ActionDescriptor();
setDescriptor.putReference(propNull,theRef);
setDescriptor.putObject(keyTo,classNull,mySettingsDesc);
setDescriptor.putString(propProperty, strMySettings);
executeAction( actionSet, setDescriptor, DialogModes.NO );
return true;
catch (e)
var exception = {};
exception.target = "setDocumentdata";
exception.message = e.toString();
return JSON.stringify(exception);
getDocumentData: function(key)
try
var classProperty = charIDToTypeID('Prpr');
var propNull = charIDToTypeID( 'null' );
var classNull = charIDToTypeID( 'null' );
var typeOrdinal = charIDToTypeID('Ordn');
var enumTarget = charIDToTypeID('Trgt');
var classDocument = charIDToTypeID('Dcmn');
var classLayer = charIDToTypeID('Lyr ');
var propProperty = stringIDToTypeID("property");
var propGeneratorSettings = stringIDToTypeID("generatorSettings");
var strMySettings = "xui"; //unique name for your settings/plugin
var propMyStringProperty = stringIDToTypeID(key); //unique name for the setting
var actionGet = charIDToTypeID( "getd" );
var theRef = new ActionReference();
theRef.putProperty(classProperty, propGeneratorSettings );
theRef.putEnumerated(classDocument, typeOrdinal, enumTarget);
var getDescriptor = new ActionDescriptor();
getDescriptor.putReference(propNull,theRef);
getDescriptor.putString(propProperty, strMySettings);
var actionResult = executeAction( actionGet, getDescriptor, DialogModes.NO );
var mySettingsDesc = actionResult.getObjectValue(propGeneratorSettings);
return mySettingsDesc.getString(propMyStringProperty);
catch (e)
var exception = {};
exception.target = "getDocumentData";
exception.message = e.toString();
return JSON.stringify(exception); -
Why doesn't my timeline work in IE?
I created this page with a basic timeline. The timeline works in Firefox, Safari and Chrome but not in IE. All my browsers are up to date. Any help would be appreciated!
http://laartgallery.net/index2.html
Thanks again,
SteveNancy; THANK YOU!! OK..it still does not work but I see where there are a lot of errors. I changed the head tags and it still does not work but I would assume I can go to the site/page you sent and it analyzes webpages for errors? I will keep at it til I get it right or maybe redo the page but thank you very much for your time...I truly appreciate it. Steve
Steve Andrews
[email protected]
www.digital-tailoring.com
215-493-8958
Date: Sat, 3 Mar 2012 13:03:27 -0700
From: [email protected]
To: [email protected]
Subject: Why doesn't my timeline work in IE?
Re: Why doesn't my timeline work in IE?
created by Nancy O. in Dreamweaver - View the full discussion
Invalid code. http://validator.w3.org/check?verbose=1&uri=http%3A%2F%2Flaartgallery. net%2Findex2.html You have multiple sets of & tags in your document. Only one set is allowed. Nancy O.Alt-Web Design & PublishingWeb | Graphics | Print | Media Specialists http://alt-web.com/http://twitter.com/altweb
Replies to this message go to everyone subscribed to this thread, not directly to the person who posted the message. To post a reply, either reply to this email or visit the message page: http://forums.adobe.com/message/4243531#4243531
To unsubscribe from this thread, please visit the message page at http://forums.adobe.com/message/4243531#4243531. In the Actions box on the right, click the Stop Email Notifications link.
Start a new discussion in Dreamweaver by email or at Adobe Forums
For more information about maintaining your forum email notifications please go to http://forums.adobe.com/message/2936746#2936746. -
Why doesn't my panaramic work on my lock screen
why doesn't my panaramic work on my lock screen
Panoramic was only something apple had in the Betas and has not been seen on any device, even the 5S, since they released the full versions of iOS 7.
-
Why doesn't my sound work on apps
Why doesn't my sound work on downloaded apps ?
Try reset iPad
Hold down the Sleep/Wake button and the Home button at the same time for at least ten seconds, until the Apple logo appears
Note: Data will not be affected. -
Why doesn't this i phone (5c( give me automatic audible notice of an email ?
Michele,
Launch Settings / Notifications Center. There you can alter how the system notifies you. Then scroll down to Mail and adjust its specific notification type.
Also make sure that the Alert sound is turned up in the Sounds portion of Settings.
-Alan -
Networking - Why Doesn't This Work?
Hey all
Just wondering if any of you have any ideas why this code isn't working properly - for the Client to connect the Server has to be restarted. Is there a solution to this problem?
The Client Class:
import java.awt.Container;
import java.awt.Color;
import java.awt.Font;
import java.awt.FlowLayout;
import java.awt.Dimension;
import java.awt.GridBagLayout;
import java.awt.GridBagConstraints;
import java.awt.Insets;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JColorChooser;
import javax.swing.ButtonGroup;
import javax.swing.Box;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.BoxLayout;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.JLabel;
import javax.swing.JComboBox;
import javax.swing.JOptionPane;
import javax.swing.JRadioButton;
import java.io.*;
import java.net.*;
* This is the user class and holds all the details for the GUI. The gui contains listeners
* ans it sends messages to the server and also recieves messages from the server. This class
* works primarily with the ClienttoServer class.
* Help was used to create this class, mainly from the Java GUI devlopment book by Varan Piroumian
* as this hsowed the basic components needed to create a GUI and which imports were the most essential
* in order to have an interactive interface for the chat application.
public class Client extends JFrame implements ActionListener
private static final long serialVersionUID = 1L;
private JTextArea conversationDisplay;
private JTextField createMsg, hostfield, portnumfd, usernamey;
private JScrollPane scrolly;
private JLabel hosty, portnum, convoLabel, msgLabel, netwrk, netwrk2, talk2urself, fonts, nickName, ustatus, econs;
private JPanel lpanel, rpanel, lpanel1, lpanel2, lpanel3, lpanel4, lpanel5, rpanel1, rpanel2, rpanel3, rpanel4, rpanel5;
private JButton sendMsgButton, colourButton, exitButton, connect, dropconnection;
private JRadioButton talk2urselfOn, talk2urselfOff;
private JComboBox fontcombiBox, statusbox, emoticons;
private JColorChooser colourchoo;
private Container theWholeApp;
private String username;
private PrintWriter writer;
private Socket socky;
//for the self comm button
private boolean talktoself = true;
//used as when a msg is sent to the server the name & msg are sent in 2 parts (\n function) i.e
//2 different messages. So in self comm mode then the next message needs to be ignored
private boolean ignoreyourself = false;
* The Constructor or the class
public Client()
makeGUI();
System.out.println("Loading the GUI....");
* Creates the GUI for the user to see/use
public void makeGUI()
//create the whole window
JFrame.setDefaultLookAndFeelDecorated(true);
//set the title of the whole app
this.setTitle("Welcome To Elliot's Chat Network...");
//set the app window size
this.setSize(600, 575);
//create the outer container for the app
theWholeApp = getContentPane();
//make new gridbag layout
GridBagLayout layoutgridbag = new GridBagLayout();
//create some restraints for this...
GridBagConstraints gbconstraints = new GridBagConstraints();
//make the app use this gridbag layout
theWholeApp.setLayout(layoutgridbag);
//this is where elements are added into the application's window
//creates and adds the convo label
convoLabel = new JLabel("Your Conversation:");
gbconstraints = new GridBagConstraints();
gbconstraints.gridx = 0;
gbconstraints.gridy = 0;
gbconstraints.gridheight = 1;
gbconstraints.gridwidth = 1;
gbconstraints.weightx = 5;
gbconstraints.weighty = 1;
gbconstraints.anchor = GridBagConstraints.WEST;
layoutgridbag.setConstraints(convoLabel, gbconstraints);
theWholeApp.add(convoLabel);
//create & add the exit button
exitButton = new JButton("Exit");
gbconstraints = new GridBagConstraints();
gbconstraints.gridx = 10;
gbconstraints.gridy = 0;
gbconstraints.gridheight = 1;
gbconstraints.gridwidth = 1;
gbconstraints.weightx = 1;
gbconstraints.weighty = 1;
gbconstraints.anchor = GridBagConstraints.EAST;
layoutgridbag.setConstraints(exitButton, gbconstraints);
theWholeApp.add(exitButton);
exitButton.addActionListener(this);
//create & add the txt area
conversationDisplay = new JTextArea(15,15);
scrolly = new JScrollPane(conversationDisplay);
gbconstraints = new GridBagConstraints();
gbconstraints.gridx = 0;
gbconstraints.gridy = 1;
gbconstraints.gridheight = 4;
gbconstraints.gridwidth = 11;
gbconstraints.weightx = 10;
gbconstraints.weighty = 20;
gbconstraints.anchor = GridBagConstraints.WEST;
gbconstraints.fill = GridBagConstraints.BOTH;
gbconstraints.insets = new Insets(10, 10, 15, 15);
//so the clients cant write in the display area...
conversationDisplay.setEditable(false);
layoutgridbag.setConstraints(scrolly, gbconstraints);
theWholeApp.add(scrolly);
//create & add the nick name area
nickName = new JLabel("Your nick \nthis is required");
gbconstraints = new GridBagConstraints();
gbconstraints.gridx = 0;
gbconstraints.gridy = 5;
gbconstraints.gridheight = 1;
gbconstraints.gridwidth = 1;
gbconstraints.weightx = 5;
gbconstraints.weighty = 1.5;
gbconstraints.anchor = GridBagConstraints.WEST;
gbconstraints.fill = GridBagConstraints.HORIZONTAL;
gbconstraints.insets = new Insets(3, 10, 0, 0);
layoutgridbag.setConstraints(nickName, gbconstraints);
theWholeApp.add(nickName);
//create & add the nick name box
usernamey = new JTextField(10);
gbconstraints = new GridBagConstraints();
gbconstraints.gridx = 0;
gbconstraints.gridy = 6;
gbconstraints.gridheight = 1;
gbconstraints.gridwidth = 1;
gbconstraints.weightx = 1;
gbconstraints.weighty = 1;
gbconstraints.anchor = GridBagConstraints.WEST;
gbconstraints.fill = GridBagConstraints.HORIZONTAL;
gbconstraints.insets = new Insets(0, 10, 0, 0);
layoutgridbag.setConstraints(usernamey, gbconstraints);
theWholeApp.add(usernamey);
//create & add the your message label
msgLabel = new JLabel("Your Message:");
gbconstraints = new GridBagConstraints();
gbconstraints.gridx = 0;
gbconstraints.gridy = 7;
gbconstraints.gridheight = 1;
gbconstraints.gridwidth = 1;
gbconstraints.weightx = 1;
gbconstraints.weighty = 1;
gbconstraints.anchor = GridBagConstraints.WEST;
gbconstraints.fill = GridBagConstraints.BOTH;
gbconstraints.insets = new Insets(0, 10, 0, 0);
layoutgridbag.setConstraints(msgLabel, gbconstraints);
theWholeApp.add(msgLabel);
//create & add the create message box
createMsg = new JTextField(15);
gbconstraints = new GridBagConstraints();
gbconstraints.gridx = 0;
gbconstraints.gridy = 8;
gbconstraints.gridheight = 2;
gbconstraints.gridwidth = 10;
gbconstraints.weightx = 10;
gbconstraints.weighty = 1;
gbconstraints.anchor = GridBagConstraints.WEST;
gbconstraints.fill = GridBagConstraints.HORIZONTAL;
gbconstraints.insets = new Insets(3, 10, 0, 0);
layoutgridbag.setConstraints(createMsg, gbconstraints);
theWholeApp.add(createMsg);
createMsg.addActionListener(this);
createMsg.setActionCommand("Press Enter!");
//create & add the send message button
sendMsgButton = new JButton("Send Msg");
gbconstraints = new GridBagConstraints();
gbconstraints.gridx = 10;
gbconstraints.gridy = 8;
gbconstraints.gridheight = 1;
gbconstraints.gridwidth = 1;
gbconstraints.weightx = 1;
gbconstraints.weighty = 1;
gbconstraints.anchor = GridBagConstraints.EAST;
layoutgridbag.setConstraints(sendMsgButton, gbconstraints);
theWholeApp.add(sendMsgButton);
sendMsgButton.addActionListener(this);
//create & add the left panel
lpanel = new JPanel();
gbconstraints = new GridBagConstraints();
gbconstraints.gridx = 0;
gbconstraints.gridy = 10;
gbconstraints.gridheight = 3;
gbconstraints.gridwidth = 4;
gbconstraints.weightx = 5;
gbconstraints.weighty = 0;
gbconstraints.anchor = GridBagConstraints.WEST;
gbconstraints.insets = new Insets(0, 10, 0, 0);
layoutgridbag.setConstraints(lpanel, gbconstraints);
theWholeApp.add(lpanel);
//create & add the right panel
rpanel = new JPanel();
gbconstraints = new GridBagConstraints();
gbconstraints.gridx = 5;
gbconstraints.gridy = 10;
gbconstraints.gridheight = 3;
gbconstraints.gridwidth = 4;
gbconstraints.weightx = 5;
gbconstraints.weighty = 0;
gbconstraints.anchor = GridBagConstraints.EAST;
layoutgridbag.setConstraints(rpanel, gbconstraints);
theWholeApp.add(rpanel);
//add to the left JPanel - set the layout for this
lpanel.setLayout(new BoxLayout(lpanel, BoxLayout.Y_AXIS));
//add panels into this left panel...
lpanel1 = new JPanel();
lpanel2 = new JPanel();
lpanel3 = new JPanel();
lpanel4 = new JPanel();
lpanel5 = new JPanel();
lpanel.add(lpanel1);
lpanel.add(lpanel2);
lpanel.add(lpanel3);
lpanel.add(lpanel4);
lpanel.add(lpanel5);
//set FlowLyout for each of these panels
lpanel1.setLayout(new FlowLayout(FlowLayout.LEFT));
lpanel2.setLayout(new FlowLayout(FlowLayout.LEFT));
lpanel3.setLayout(new FlowLayout(FlowLayout.LEFT));
lpanel4.setLayout(new FlowLayout(FlowLayout.LEFT));
lpanel5.setLayout(new FlowLayout(FlowLayout.LEFT));
//add in the network items...
netwrk = new JLabel("Network Details:");
lpanel1.add(netwrk);
//create and add instructions for this
netwrk2 = new JLabel("Please enter the details for \nthe person you want to chat to...");
lpanel2.add(netwrk2);
//create/add the ip addy label
hosty = new JLabel("Host:");
lpanel3.add(hosty);
lpanel3.add(Box.createRigidArea(new Dimension(5,0)));
hostfield = new JTextField("Enter Hostname",10);
lpanel3.add(hostfield);
//port num next
portnum = new JLabel("Port Number:");
lpanel4.add(portnum);
lpanel4.add(Box.createRigidArea(new Dimension(5, 0)));
portnumfd = new JTextField("2250", 10);
lpanel4.add(portnumfd);
//create & add the connect butt
connect = new JButton("Connect");
lpanel5.add(connect);
dropconnection = new JButton("Disconnect");
lpanel5.add(dropconnection);
connect.addActionListener(this);
dropconnection.addActionListener(this);
//start the creation of the right hand panel.
rpanel.setLayout(new BoxLayout(rpanel, BoxLayout.Y_AXIS));
//create the panels again
rpanel1 = new JPanel();
rpanel2 = new JPanel();
rpanel3 = new JPanel();
rpanel4 = new JPanel();
rpanel5 = new JPanel();
rpanel.add(rpanel1);
rpanel.add(rpanel2);
rpanel.add(rpanel3);
rpanel.add(rpanel4);
rpanel.add(rpanel5);
rpanel1.setLayout(new FlowLayout(FlowLayout.LEFT));
rpanel2.setLayout(new FlowLayout(FlowLayout.LEFT));
rpanel3.setLayout(new FlowLayout(FlowLayout.LEFT));
rpanel4.setLayout(new FlowLayout(FlowLayout.LEFT));
rpanel5.setLayout(new FlowLayout(FlowLayout.LEFT));
//now start putting things into them again
//add in the font settings
String[] fonty = {"Normal", "Bold", "Italic"};
fonts = new JLabel("Set your text style:");
fontcombiBox = new JComboBox(fonty);
rpanel2.add(fonts);
rpanel2.add(Box.createRigidArea(new Dimension(4,0)));
rpanel2.add(fontcombiBox);
//default text will be plain..
fontcombiBox.setSelectedIndex(0);
String[] userstatus = {"Online", "Away", "Be Right Back", "Busy", "Out To Lunch", "On The Phone"};
ustatus = new JLabel("Select a status:");
statusbox = new JComboBox(userstatus);
rpanel2.add(ustatus);
rpanel2.add(Box.createRigidArea(new Dimension(2,0)));
rpanel2.add(statusbox);
//add in some emotion to the conversations
String[] emotion = {"Angry", "Happy", "Sad", "Crying", "Shocked", "Laughing", "Laughing My Ass Off!"};
econs = new JLabel("Select an emoticon:");
emoticons = new JComboBox(emotion);
rpanel3.add(econs);
rpanel3.add(Box.createRigidArea(new Dimension(3,0)));
rpanel3.add(emoticons);
//self comm options
talk2urself = new JLabel("Set Self Communication Mode:");
rpanel4.add(talk2urself);
talk2urselfOn = new JRadioButton("On", true);
rpanel4.add(talk2urselfOn);
rpanel4.add(Box.createRigidArea(new Dimension(4, 0)));
talk2urselfOff = new JRadioButton("Off", false);
rpanel4.add(talk2urselfOff);
//create a group that will hold both these buttons together
ButtonGroup groupy = new ButtonGroup();
//add them to the group
groupy.add(talk2urselfOn);
groupy.add(talk2urselfOff);
//create and add the change backgrd button
colourButton = new JButton("Alter Background");
rpanel5.add(colourButton);
//add in some listeners
talk2urselfOn.addActionListener(this);
talk2urselfOff.addActionListener(this);
fontcombiBox.addActionListener(this);
colourButton.addActionListener(this);
statusbox.addActionListener(this);
//add in the 'X' button in the top right corner of app
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//put all elements together
this.pack();
//show the GUI for the user..
this.show();
* Creates a new client and GUI as its the main method
public static void main(String args[])
new Client();
* This method listens for actions selected by the user and then performs the
* necessary tasks in order for the correct events to take place...!
* This method was mainly created thanks to the Developing Java GUI book which has already
* been mentioned as it covers listeners and event handling...
public void actionPerformed(ActionEvent event)
//if the send button is clicked or if hard carriage return after message
if((event.getSource() == (sendMsgButton)) || (event.getSource().equals(createMsg)))
//if theres no text dont send message
if(createMsg.getText().equals(""))
JOptionPane.showMessageDialog(this, "There's no text to send!");
else
String str = createMsg.getText();
printMessage(str);
//if the exit button is clicked
if(event.getSource() == (exitButton))
//quit the chat app
JOptionPane.showMessageDialog(this, "Thanks For Using Elliot's Chat Network! \nSee You Again Soon!");
System.exit(0);
//if the self comm option is turned on
if(event.getSource() == (talk2urselfOn))
talktoself = true;
JOptionPane.showMessageDialog(this, "You have begun self communication \nmessages you send are now displayed");
//if the self comm option is turned off
if(event.getSource() == (talk2urselfOff))
talktoself = false;
JOptionPane.showMessageDialog(this, "You have stopped self communication \nmessages you send are no longer displayed");
//for the normal font option
if(fontcombiBox.getSelectedItem().equals("Plain"))
//makes a new font style plain...
conversationDisplay.setFont(new Font("simple", Font.PLAIN, 12));
createMsg.setFont(new Font("simple", Font.PLAIN, 12));
//for the bold font option
if(fontcombiBox.getSelectedItem().equals("Bold"))
conversationDisplay.setFont(new Font("simple", Font.BOLD, 12));
createMsg.setFont(new Font("simple", Font.BOLD, 12));
//for the italic font option
if(fontcombiBox.getSelectedItem().equals("Italic"))
conversationDisplay.setFont(new Font("simple", Font.ITALIC, 12));
createMsg.setFont(new Font("simple", Font.ITALIC, 12));
* //the status events if they didnt create null points...
if(statusbox.getSelectedItem().equals("Online"))
String status = "<Online>";
printMessage(status);
if(statusbox.getSelectedItem().equals("Away"))
String status = "<Away>";
printMessage(status);
if(statusbox.getSelectedItem().equals("Be Right Back"))
String status = "<Be Right Back>";
printMessage(status);
if(statusbox.getSelectedItem().equals("Busy"))
String status = "<Busy>";
printMessage(status);
if(statusbox.getSelectedItem().equals("Out To Lunch"))
String status = "<Out To Lunch>";
printMessage(status);
if(statusbox.getSelectedItem().equals("On The Phone"))
String status = "<On The Phone>";
printMessage(status);
//the emoticons events...
if(emoticons.getSelectedItem().equals("Angry"))
String status = "<Angry>";
printMessage(status);
if(emoticons.getSelectedItem().equals("Sad"))
String status = "<Sad>";
printMessage(status);
if(emoticons.getSelectedItem().equals("Shocked"))
String status = "<Shocked>";
printMessage(status);
if(emoticons.getSelectedItem().equals("Happy"))
String status = "<Happy>";
printMessage(status);
if(emoticons.getSelectedItem().equals("Crying"))
String status = "<Crying>";
printMessage(status);
if(emoticons.getSelectedItem().equals("Laughing"))
String status = "<Laughing>";
printMessage(status);
if(emoticons.getSelectedItem().equals("Laughing My Ass Off!"))
String status = "<Laughing My Ass Off!>";
printMessage(status);
//if the colour button is clicked
if(event.getSource() == colourButton)
//create a new colour chooser
colourchoo = new JColorChooser();
//create the dialog its shown in
JColorChooser.createDialog(colourButton, "Choose your background colour", true, colourchoo, this, this);
//now show the dialog
Color col = JColorChooser.showDialog(sendMsgButton, "Choose your background colour", Color.GRAY);
//when a colour is chosen it becomes the bg colour
theWholeApp.setBackground(col);
rpanel1.setBackground(col);
rpanel2.setBackground(col);
rpanel3.setBackground(col);
rpanel4.setBackground(col);
rpanel5.setBackground(col);
lpanel1.setBackground(col);
lpanel2.setBackground(col);
lpanel3.setBackground(col);
lpanel4.setBackground(col);
lpanel5.setBackground(col);
//if the connect button is clicked
if(event.getSource() == (connect))
//get the txt entered into ip addy field & port num fields with a text check...
if(hosty.getText().equals("") || portnumfd.getText().equals("") || nickName.getText().equals(""))
JOptionPane.showMessageDialog(this, "You cant connect! \nThis is because the either the \n0 - HostName\n 0 - Port Number \n0 - Your Nick \nIs Missing...");
else
//get details and connect
username = nickName.getText();
String ipay = hostfield.getText();
String porty = portnumfd.getText();
connectto(ipay,porty);
* This method is similar to an append method in that it allows msgs recieved by the server to
* be displayed in the conversation window. It also deals with the self comm mode as if its disabled
* then no messages from the sender will be displayed.
public void moveTextToConvo(String texty)
//check
if(ignoreyourself == true)
ignoreyourself = false;
else
//If self comm is on the send message as normal
if(talktoself)
conversationDisplay.setText(conversationDisplay.getText() + texty);
else
//check message isnt sent by the current client - if it is ignore it!
if(texty.startsWith(nickName.getText()))
ignoreyourself = true;
else
conversationDisplay.setText(conversationDisplay.getText() + texty);
//allows the scroll pane to move automatically with the conversation
conversationDisplay.setCaretPosition(conversationDisplay.getText().length());
* This method (connectto) is called if the button's clicked and also sets up a relation
* between the client and clienttoserver class
public void connectto(String ipa,String portNO)
//portNO needs to be changed from string to int
int portNum = new Integer(portNO).intValue();
try
//creates a socket
socky = new Socket(ipa, portNum);
writer = new PrintWriter(socky.getOutputStream(), true);
ClienttoServer cts = new ClienttoServer(socky, this);
cts.runit();
//give user a prompt
JOptionPane.showMessageDialog(this, "You're now connected!");
catch(UnknownHostException e)
System.err.println("Unknown host...");
//prompt the user
JOptionPane.showMessageDialog(this, "Failed to connect! \nPlease try again...");
catch(IOException e)
System.err.println("Could Not Connect!");
//prompt user
JOptionPane.showMessageDialog(this, "Error! \nCould not connect - please try again!");
* This method sends msgs from current client to server, sends username and then the message.
* This is split into two different messages as the "\n" is used.
public void printMessage(String mess)
writer.println(usernamey.getText() + " says: \n" + mess);
//then clear the text in the message creation area...
createMsg.setText("");
* Accessor method to retrieve userName
public String getUName()
return username;
* Disconnect this user from the server so that they can no longer recieve/send messages
public void dropconnection()
try
//Start to close everything - informing user
writer.close();
socky.close();
//Give the user info on whats happening
JOptionPane.showMessageDialog(this, "You are now disconnected \nYou will no longer be able to \nsend and recieve messages");
System.out.println("A user has left the conversation...");
catch (IOException e)
System.err.println("IOException " + e);
The Server Class:
import java.net.*;
import java.io.*;
* This class works in sync with the ServertoClient class in order to read
* messages from clients and then send back out to all the active clients. Due to
* the usage of threading multiple clients can use this server.
* Once again some of this code is from Florians 2005 tutorial work.
public class Server
private ServerSocket server;
private ServertoClient threads[];
private static int portNo = 2250;
private static String Host = ""; //find method to retrieve ip
private int maxPeeps = 20; //20 people can talk together but this can be altered
* 1st Constructor - has no params
public Server()
* 2nd Constructor - allows for port number setting
public Server(int portnumber)
portNo = portnumber;
* 3rd Constructor - allows for port number & max users
public Server(int portnumber, int maxiusers)
portNo = portnumber;
maxPeeps = maxiusers;
* This method is to constantly listen for possible messages from clients
public void listener()
//set the time out of method to just under a minute
final int waitingTime = 500000000;
//a boolean variable to keep it waiting
boolean keepWait = true;
//create a threads array of length maxpeeps
threads = new ServertoClient[maxPeeps];
//define a variable that will be used as a count of the no of threads
int x = 0;
try
//open a new socket on this port number
server = new ServerSocket(portNo);
catch (IOException e)
System.err.println("IOException " + e);
return;
//while the keepWait is true and the no. of threads is less than the max...
while(keepWait && x < maxPeeps)
try
//set the timeout, this is the waitingTime (50 secs)
server.setSoTimeout(waitingTime);
//listen for connection to accept
Socket socky = server.accept();
System.out.println("A New User Has Connected");
//creates a new thread and adds it to array
threads[x] = new ServertoClient(this, socky);
//the thread begins
threads[x].start();
catch (InterruptedIOException e)
System.err.println("The Connection Timed Out...");
keepWait = false;
catch (IOException e)
System.err.println("IOException " + e);
x++; //increment no. of threads
//if waitingTime is reached or there are too many threads then server closes
try
server.close();
catch(IOException e)
System.err.println("IOException " + e);
return;
* This prints the string to all active threads
public void printAll(String printy)
for(int x = 0; x < threads.length; x++)
if(threads[x] !=null && threads[x].isAlive())
threads[x].sendMsg(printy);
* Main method for the server, creates a new server and then continues to listen
* for messages from different users
public static void main(String[] args)
Server chatsession = new Server();
System.out.println("The Server Is Now Running on port NO: " + portNo);
System.out.println("And IP Address: " + Host);
chatsession.listener();
[/code
The ServertoClient Classimport java.lang.Thread;
import java.net.*;
import java.io.*;
* This is the ClienttoServer class that acts as an intermediary between the server
public class ClienttoServer extends Thread
private Socket socky;
private BufferedReader bready;
private boolean active;
private Client client;
* This is the constructor to create a new client service
public ClienttoServer(Socket socket, Client cli)
socky = socket;
active = false;
client = cli;
//try to read from the client
try
bready = new BufferedReader(new InputStreamReader(socky.getInputStream()));
catch (IOException e)
System.err.println("IOException " + e);
* This method reads in from the client
public void runit()
active = true;
while(active == true)
{//continue to read in and then change the text in the conversation window
try
String message = bready.readLine();
client.moveTextToConvo(message + "\n");
catch (IOException e)
System.err.println("IOException " + e);
active = false;
And finaly the servertoclient class
import java.net.*;
import java.io.*;
import java.lang.Thread;
* This clas provides the services that the server uses
public class ServertoClient extends Thread
private Socket socky;
private Server server;
private BufferedReader bready;
private PrintWriter writer;
* This constructor sets up the socket
public ServertoClient(Server theServer, Socket theSocket)throws IOException
socky = theSocket;
server = theServer;
//sets up the i/o streams
writer = new PrintWriter(socky.getOutputStream(), true);
bready = new BufferedReader(new InputStreamReader(socky.getInputStream()));
* This method keeps listening until user disconnects
public void run()
boolean keepRunning = true;
try
//keep listening 'til user disconnects
while(keepRunning = true)
final String tempmsg = bready.readLine();
//is there a message (if yes then print it!)
if(tempmsg == null)
else
server.printAll(tempmsg);
dropconnection();
catch (IOException e)
System.err.println("IOException in thread " + Thread.currentThread() + ": " + e);
* This method is for when a user disconnects from the server...
public void dropconnection()
try
bready.close();
writer.close();
socky.close();
catch (IOException e)
System.err.println("IOException in thread " + Thread.currentThread() + ": " + e);
System.out.println("A User Has Disconnected...");
* This method prints the message
public void sendMsg(String msg)
writer.println(msg);
}Thats it any help would be much appreciated
Cheers.Like the previous poster indicated: try to find a minimal example that shows the error your experiencing.
One thing that seems bogus is the Server.listener() method. For one thing, it can increment x even if no new connection has been established (e.g., x will be incremented if an exception is caught). -
VirtualBox clipboard issue AKA why doesn't this restart script work?
The host is Windows7, the guest is up-to-date Arch and everything I describe is for guest-to-host or host-to-guest copy and paste. The clipboard within the guest never fails. The VirtualBox Guest configuration has the clipboard set to 'bi-directional.'
I'm starting the clipboard via .xinitrc which includes the following line
VBoxClient-all &
This is what gets launched
oliver 211 1 0 15:33 ? 00:00:00 /usr/bin/VBoxClient --clipboard
It all works perfectly for an indiscriminate amount of time, then suddenly, it stops updating the buffer. If I try to copy/paste anything new, I get the last entry before it stopped working. If I restart it (by killing the process and running VBoxClient --clipboard) it works again for an indiscriminate time. Wash/rinse/repeat.
I wrote a quick script to run from cron but it's having problems
This is the script
#!/usr/bin/bash
PID="$(ps -ef|grep -i "[v]boxclient --clipboard" | awk '{print $2}')"
kill $PID && /usr/bin/VBoxClient --clipboard
exit 0
I watched the cronjob and it appears to be doing what I want but a 'ps' doesn't show it running afterwards
++ grep -i '[v]boxclient --clipboard'
++ awk '{print $2}'
++ ps -ef
+ PID=3158
+ kill 3158
+ /usr/bin/VBoxClient --clipboard
+ exit 0
I'm assuming cron runs the command in a shell that gets destroyed when the cronjob is done or something and this is tearing down the process. I've tried modifying the command with nohup and ampersands to no avail.
A fix for the underlying problem would be great but I'm assuming I'll be waiting on Oracle for that. In the meantime, if I could restart this thing periodically it would help me out a bit.
Any ideas?I have the same problem - VBoxClient stops working and restarting it from cron does not work.
I run this from cron every 10 minutes:
(killall VBoxClient && VBoxClient-all) || VBoxClient-all
and VBoxClient is killed every time but is not launched again. How can you explain it? -
alright.
made it a couple times. no problem. but for right now either i have a problem with my mac or here are some nervewrecking coincidences going on to make my life just that more complicated:
as in every youtube-tutorial about how to get pictures into imovie and in lots of macusers logic to get a photo into imovie you do this with the function of the mediacenter at the center-right. so you go there click on the iphoto and to fast forward everything go for the searchbar and look for the photo you want, drag it to the upper left side or if you changed setting bottom left side and then, what comes next... yep... right... you drop it.... well yeah, if there would be the possibility => i got no possibility to drop my pictures.
however, this is no problem for me with my videos, with my audio but for some random reason photos are unpossible for me to drag there.
somebody an advice? something with the setting? it's normal jpeg, it's imovie from the year 2009 which is version 8alright, you guys, forget about what i just said... i know why it's not working, it is a file that is not as a quadratic picture but one that is just cut out of a quadratic picture. so it's probably that's why it is not working....
so let's take this thing to a different level:
how can i get things that i cut out from editors like gimp and made a jpeg file out of it get into imovie when they are not quadratic?
My idea is to make a video and add in the foreground some little pictures. something like a logo that i can't make with the writing software of imovie. So hoy can i add such a thing or is it even possible? -
Why doesn't viewport tag work if the page is local?
If the ipad just connects to my computer and views the .htm page then the viewport tag is not supported. However, if I upload that same page to a web server and visit it the ipad does support it.
Any idea why that is or what can be done to fix it?Hi Morpheus:
I haven't tested it but Firefox 26 from the Google Play store should work on the Galaxy Mega. I'd be surprised if it doesn't. It works fine on the 3 other Samsung devices I have.
Please try re-installing Firefox and then if you still have the same issue namely:
QUOTE
'''I get the Metro PCS default page that says I need the Mobile Hotspot service'''
END QUOTE
than it's probably a Metro PCS issue because it is possible for your mobile carrier to do things like take over what's displayed when you open Firefox or any other browser. We've had cases of other US mobile carriers changing the home page on Firefox and other Android browsers for example.
If you still get the same Metro PCS issue, does the issue go away when you use another WiFi provider, e.g. at Starbucks?
'''IF the issue goes away when you use another WiFi provider, it's definitely a Metro PCS issue (in that case please ask Metro PCS support).''' -
Why doesn't remote desktop work on mavericks ?
I'm trying to connect to a small (10) local network of imacs all running Mavericks 10.9.3. I'm using Remote Desktop over Bonjour and also trying to share an iTunes library using Home sharing. None of the computers will respond. I get an error (-3170) on the target computers for the home sharing and RD tells me they're all sleeping when I can see perfectly well that they are awake and logged in. They all have RD client 3.7.1 installed but the response I get from RD when I try to wake them is 'this is not supported on these computers'.
Apple, what is going on ? This system worked wonderfully well under 10.6.8 and now it's completely screwed with Mavericks. Frustrating the **** out of me as none of it seems logical in the least, especially as all the computers respond readily via the 'Go/connect to server/browse/connect method'. They are obviously all connected it's just this new OS just doesn't work. Really disappointing :-(You may have to contact Apple at 1-800-MYAPPLE or contact an Apple Store directly.
I am no expert on this particular Apple software.
Try posting your issues here instead.
https://discussions.apple.com/community/servers_enterprise_software/apple_remote _desktop
Good Luck! -
Why doesn't my eprint work on my android anymore?
Why doesn't my e-print work on my android anymore?
Panoramic was only something apple had in the Betas and has not been seen on any device, even the 5S, since they released the full versions of iOS 7.
Maybe you are looking for
-
I deleted my Iphoto library and I want it back!
Yesterday, my computer sent me an advice telling that I should delete some itens from my Boot Disk, because it was almost full. So, I decided to clear my Trash, but (I don't know why and how) my iPhoto Library was inside it and it was gone forever wi
-
Adding points to Curves Adjustment Layer in PsCS6 broken?
In CS3, CS4 and CS5 I was able to: (a) add a point (corresponding to the position of the Eyedropper Tool on the image) to the RGB composite curve by Control + Clicking; and (b) add a point (whilst focused on the RGB composite curve) to each of the Re
-
PM6.5 upgrade to CS5.5
Good evening all, I just ordered the CS5.5 upgrade for my PM6.5 from Adobe. It will not install and Adobe support is telling me my CS5.5 is for PM4. The side of the box clearly states that in order to install this update I must have PM6.x or 7.x.
-
Wrote a script to make dealing with pacnew files less tedious!
oops Last edited by manOwl (2011-05-12 10:12:52)
-
Kernal panic / grey window freeze/restart help
Hi, here it is from the panic log. Anyone know what this problem is? I've got a 512 RAM card that is showing as 256 in the memory section of the system profile/about this mac, so maybe that piece of RAM is the problem. Any help would be much apprecia